Fórum Relacionamento de Arquivos como eu faco isto? #162917

27/05/2003

0

O problema e um seguinte.

Tenho duas tabelas [ Clientes e EndCli ] eu preciso realizar um relacionamento entre as duas, gostaria que este relacionamento me proporcionasse-se uma operação onde se eu excluir um cliente, todos os endereços deste cliente sera também excluídos ou quando eu movimentar a tabela cliente com o método First ou Last o relacionamento me traga apenas os dados da tabela EndCli que corresponda com o código do Cliente que o método First ou Last parou.



Trabalho com Delphi 6 c/ FireBird

Na tabela cliente tem o campo iCodigo e na tabela EndCli tenho o campo iCodCli que são chaves primarias. gostaria que o relacionamento fosse feito apartir destas chaves.


Rodrigo Ferreira

Rodrigo Ferreira

Responder

Posts

27/05/2003

Karepa

Para o relacionamento :

QRCLIENTES = QUERY DE CLIENTES
DSCLIENTES = DATA SOURCE DE CLIENTES
QRENDCLI = QUERY DE CLIENTES
DSENDCLI = DATASOURCE DE CLIENTES

No sql da QRENDCLI, deve informar o seguinte

SELECT * FROM ENDCLI WHERE IENDCLI = :ICODCLI

Deve ligar o dataset da QRENDCLI ao DSCLIENTE.

pronto, quando você movimentar a tabela de clientes, automaticamente irá movimentar a tabela de endereços.

quanto a exclusão, no evendo onDelete da QRCLIENTES,
voce deve executar uma query que exclua todos os registros da tabela ENDCLI quando o ICODCLI for igual ao codigo do cliente.

ou ainda,

incluir uma regra no interbase, criando uma CHAVE PRIMARIA (PK) no campo icodigo da tabela cliente e um chave extrangeira, (FK) na tabela de ENDERECOS campo ICODCLI.
tens que observar, pois existe uma opção onDelete nesta montagem da chave estrangeria, deve estar cascate.


Responder

Gostei + 0

28/05/2003

Rodrigo Ferreira

Ai galera obrigado pela respota


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar