Fórum Erro ao criar Segunda Chave Estrangeira #47962
09/11/2004
0
Estou usando o Firebird 1.5 e criando e modificando minha tabela pelo IbExpert, aquela versão free.. o problema acontece sempre q eu tento criar uma segunda regra pra deletar registros, q é assim:
Tabela Grupos Tabela SubGrupos Tabela Revistas
PkCod_Grupo PkCod_SubGrupo PkCod_Revista
Nome FkCod_Grupo FkCod_Grupo
Nome FkCod_SubGrupo
Nome
Basicamente é isso.. o q quero é o seguinte, quando eu deletar um Grupo, q o programa delete também o SubGrupo e a Revista ligado a ele.. isso eu consigo, botando o código na Tabela Revistas pra ´apagar em cascata´.. só q, se eu tento colocar outro código pra q a revista seja apagada se for deletado um SubGrupo, o programa dá o erro abaixo, e nao deixa eu gerar esse scrip.. o q será q pode ser?
This operation is not defined for system tables. unsuccessful metadata update. STORE RDB$INDICES failed. attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_5".
Allan Elias Ramos :?:
Aersoftware
Curtir tópico
+ 0Posts
09/11/2004
Fsflorencio
ps. Se puder, coloque os scripts de criação das chaves primárias e estrangeiras pra nós darmos uma olhada.
Gostei + 0
10/11/2004
Aersoftware
Tenho 3 Tabelas:
Grupos
SubGrupos
Revistas
Sou [b:739ca452af]obrigado[/b:739ca452af] a ter um Grupo e um SubGrupo pra ter uma revista.. mas no caso, um Grupo pode ter muitos SubGrupos, e um SubGrupo pode ter muitas Revistas..
Neste print, o q eu quero fazer funciona, q é, quando deletar um Grupo, deletar tb todos Grupos e Revistas ligado nele..
[url]www.multiversox.com/phpteste/ChaveEstrangeiraGrupos.JPG[/url]
Neste segundo print, o q tento fazer é colocar tb, pra quando eu deletar um SubGrupo, deletar todas revistas contidas nele..
[url]www.multiversox.com/phpteste/ChaveEstrangeiraSubGrupos.JPG[/url]
só q quando boto pra rodar esse script, ele da o seguinte..
[url]www.multiversox.com/phpteste/ChaveEstrangeiraSubGruposErro.JPG[/url].
Isso q nao entendo pq.. :cry:
Allan Elias Ramos :cry:
Gostei + 0
11/11/2004
Fsflorencio
O q eu não entendí, é que na figura aparecem duas constraints com o mesmo nome. Foi feita alguma montagem?
Gostei + 0
11/11/2004
Aersoftware
A figura ta daquele jeito pq eu nao salvei as alterações.. o programa deixa eu fazer, mas quando dou o Commit, ele gera o erro da 3ª figura..
Allan Elias Ramos :roll:
Gostei + 0
11/11/2004
Fsflorencio
A dica que te dou é a seguinte:
No nome da constraint colocar o nome das duas tabelas, por ex: FK_CONTAS_RECEBER_CLIENTES, ITENS_PEDIDOS_PRODUTOS.
Desta forma, quando ocorrer algum erro na aplicação envolvendo estas chaves, de cara já dá pra descobrir quais são as tabelas envolvidas sem haver necessidade de abrir o banco.
Gostei + 0
11/11/2004
Aersoftware
Allan Elias Ramos :roll:
Gostei + 0
12/11/2004
Aersoftware
Allan Elias Ramos :wink:
Gostei + 0
12/11/2004
Gandalf.nho
Não.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)