Escolar Documentos
Profissional Documentos
Cultura Documentos
Restries de Integridade
Restri$o de va#io
Restries de dom&nio
Integridade referencial
('ec) constraints
Gatil'os
*sseres
Garantidas pelo
SGBD
O programador
+$o se preocupa
(om estas restries
Restries de Integridade Sem,ntica
*bodagem relacional
Regra 3+ulo5
/.emplo em SCD1
Data
666
Create table funcionario
(matricula integer not null,
nome varchar(30) not null,
,ata)ascimento date,
en,ereco varchar(35))
Matricula Nome dataNascimento endereco
:;< Garia B:HIBH@AJK Rua (arval'o ?@:
:;A Pedro @;HI?H@AAI Rua Pedro ('aves BB
Insert into funcionario values (5AB> 3Paulo5> 20/15/1999> 3*v Ipiranga @AII5
Restries de ('ave
Restries de ('ave E Prim"ria
/.emplo
C/'01' 102&' cidade
(co,igoCi,a,e integer )31 )4&&,
,escricao varchar(40) )31 )4&&,
esta,o char(2),
PRIMARY KEY (codigoCidade))
C/'01' 102&' cliente
(co,igoCliente integer )31 )4&&,
nome varchar(30) )31 )4&&,
co,Ci,a,e integer,
./I-0/5 6'5 (co,igoCliente),
73/'I8) 6'5 (co,Ci,a,e) REFERENCES Cidade (codigoCidade))
codigolient
e
Nome endereco codigoidade
:;< Garia Rua (arval'o ?@: @
:;A Pedro Rua Pedro ('aves
BB
:
codigoidad
e
Descricao !stado
@ 4lorian0poli
s
S(
B S$o Nos8 S(
(liente
(idade
9iola a restri$o cidade : n$o e.iste
" restrio garante #ue no ir e$istir %&!N'! #ue more numa cidade #ue no e$ista na ta(ela &D"D!
Restries de Integridade Referencial
O+ D/D/7/
O+ 2PD*7/
*RS/S1
/.clus$o1 ao e.cluir uma cidade da tabela &D"D!> o SGBD precisa garantir !ue
n$o e.ista nen'um cliente na tabela (DI/+7/ referenciando esta cidade
!$cluso1 on delete cascade 8 Ftil !uando1 ao eliminar uma nota fiscal os seus itens
sejam removidos6
codProduto Nome valor
:;< Pao K>II
:;A Deite B>II
Numero codProduto #tde
II@ :;< B
II@ :;A :
Produto
ItensXnota
numero codliente Data
II@ @ BIHIBHBII
?
IIB B BIHI:HBII
<
IIK @ BIHI;HBII
<
+ota
(R/*7/ 7*BD/ I7/+SX+O7*
(numero integer +O7 +2DD> codProduto integer +O7 +2DD> !tde float>
PRIG*RY Z/Y (numero>
4OR/IG+ Z/Y (codProduto R/4/R/+(/S Produto (codProduto ON D!%!'! R!+'R&'0,
4OR/IG+ Z/Y (numero R/4/R/+(/S N*'" (numero ON D!%!'! "+"D!0