FOREIGN KEY

PITERGALDIANO 21/01/2016 17:07:05
#456363
Boa tarde!

Estou programando em vb.net e preciso inserir um valor null em um determinado campo da tabela. Ex. ID_Categoria da tabela [Ô]produtos[Ô]
o Campo ID_Categoria pertence a tabela [Ô]categoria[Ô]. Portando na tabela [Ô]produtos[Ô] tem um foreign key direcionando na tabela ID da tabela categoria.

Porém nesse tipo de relacionamento não posso ter valores null no campo ID_Categoria, pois gera um erro ao inserir e atualizar. o campo ID_Categoria não é obrigatório então pode ser null. Como posso fazer isso?

Grato.
KERPLUNK 21/01/2016 19:32:23
#456371
Resposta escolhida
Isso depende do banco de dados. Alguns, criam a FK já permitindo null, outros não. O que você deve fazer é configurar a FK para aceitar null.
NICKOSOFT 22/01/2016 07:59:57
#456379
em cima disso fiquei foi c outra duvida....
pq um FK se quer incluir null nele, isso certamente vai gerar inconsistência de dados no futuro
PITERGALDIANO 22/01/2016 11:38:36
#456385
Então pessoa eu também já me fiz essa pergunta do micksoft, porém o fato é:

Tenho uma tabela [Ô]produtos[Ô] que posso referenciar ou [txt-color=#e80000]não[/txt-color] a qual família o produto pertence.

essa referencia é feita através do ID da tabela [Ô]familia[Ô]. Porém, como o campo ID_FAMILIA da tabela produtos não é obrigatório, quando eu não informar ele deve gravar null, e quando isso ocorria gerava um erro.

Motivo do erro: a tabela família estava como o campo ID not null. Agora fiz igual o KERPLUNG falou e funcionou certinho. O banco que uso é SQL Server.

Obrigado a todos pelas respotas.
Tópico encerrado , respostas não são mais permitidas