Ajuda - Chave estrangeiras (foreign key)  XML
Índice dos Fóruns » Persistência: Hibernate, JPA, JDBC e outros
Autor Mensagem
andredecotia
JWizard
[Avatar]

Membro desde: 19/10/2009 14:37:32
Mensagens: 2267
Localização: São Paulo
Offline

Olá gente,

alguém pode me ajudar a entender na prática como usar chave estrangeira? Acho que entendí o conceito
mas estou modelando um banco de dados e estou me perdendo quanto a forma de usar chave estrangeira (foreign key)...


Obrigadão...
André AS

--
André AS


Analista Programador Java Web freelancer / home office
Linkedin: http://www.linkedin.com/profile/view?id=41470291&trk=tab_pro

[Email] [MSN] [ICQ]
andredecotia
JWizard
[Avatar]

Membro desde: 19/10/2009 14:37:32
Mensagens: 2267
Localização: São Paulo
Offline

Ví que tem tb a "constraint"... Acredito que seja para referenciar...

abs,
AS

This message was edited 1 time. Last update was at 01/05/2010 17:53:34


--
André AS


Analista Programador Java Web freelancer / home office
Linkedin: http://www.linkedin.com/profile/view?id=41470291&trk=tab_pro

[Email] [MSN] [ICQ]
andredecotia
JWizard
[Avatar]

Membro desde: 19/10/2009 14:37:32
Mensagens: 2267
Localização: São Paulo
Offline

Tá certo?


CREATE TABLE ORDERS(
OrderID varchar(45),
OrderDate varchar(45),
sid varchar(45),
Primary Key (OrderID),
Foreign Key (sid) references custumer(sid)
);

create table custumer(
SID varchar(45),
Primary Key (sid));

--
André AS


Analista Programador Java Web freelancer / home office
Linkedin: http://www.linkedin.com/profile/view?id=41470291&trk=tab_pro

[Email] [MSN] [ICQ]
andredecotia
JWizard
[Avatar]

Membro desde: 19/10/2009 14:37:32
Mensagens: 2267
Localização: São Paulo
Offline

Estou descubrindo...

CREATE TABLE ORDERSk(
OrderID varchar(45),
OrderDate varchar(45),
sid varchar(45),
Primary Key (OrderID),
Foreign Key (sid) references custumer(sid)
);

ou

CREATE TABLE ORDERSk(
OrderID varchar(45),
OrderDate varchar(45),
sid varchar(45),
Primary Key (OrderID),
Foreign Key (sid) references custumer(sid)
);





create table custumer(
SID varchar(45),
Primary Key (sid));

--
André AS


Analista Programador Java Web freelancer / home office
Linkedin: http://www.linkedin.com/profile/view?id=41470291&trk=tab_pro

[Email] [MSN] [ICQ]
FernandoMelo
Thread.start()

Membro desde: 10/01/2008 17:11:01
Mensagens: 37
Localização: Florianópolis
Offline


Se vc tem um cadastro de cliente e seu endereço. E como vc vai ter varios clientes em uma mesma cidade, utilize uma chave estrangeira para referenciar o código da sua cidade na tabela cidade. Isto evita o armazenamendo desnecessário de dados duplicado, auxilia na pesquisa, alteração em lote, etc....

tabela cadastro de cliente
nome
CFP
endereco

pkcidade

tabela cidades
pkcidade
cidadeDescricao


mas sim o código da cidade, este código será a referencia na tabela cidade
[Email] aim icon [MSN] [ICQ]
andredecotia
JWizard
[Avatar]

Membro desde: 19/10/2009 14:37:32
Mensagens: 2267
Localização: São Paulo
Offline

hmmmm

--
André AS


Analista Programador Java Web freelancer / home office
Linkedin: http://www.linkedin.com/profile/view?id=41470291&trk=tab_pro

[Email] [MSN] [ICQ]
 
Índice dos Fóruns » Persistência: Hibernate, JPA, JDBC e outros
Ir para:   
Powered by JForum 2.1.8 © JForum Team