SQL - Chave estrangeira

1 resposta
D

Pessoal, na base de dados que criei tenho a tabela televisao e a tabela localização
O relacionamento que fiz foi 1:1, sendo que uma tv pode ter uma única localização e cada localização somente tem uma tv.

Ao tentar inserir no banco (Oracle) nao consigo, pois a tabela televisão pede um registro de localização (por ter FK) e vice-versa.

O q posso fazer?

obrigado

1 Resposta

drsmachado

Você não pode inserir um registro que contenha uma referencia à uma FK que ainda não existe no banco de dados.
Considerando que a tabela televisao possui a FK que referencia a localização, e este registro, para a coluna localizacao_id possua o valor 5, o BD somente aceitará essa inclusão caso já exista, na tabela localizacao, um registro salvo com o id = 5.

Ou seja, para cada televisao inserida você precisa inserir, antes, a localização.
Se e somente se a FK estiver invertida (a FK da tabela localzacao referencia uma coluna da tabela televisao)

Criado 6 de maio de 2011
Ultima resposta 6 de mai. de 2011
Respostas 1
Participantes 2