Ligação entre chaves no SQL
16/02/2021
0
Tenho duas tabelas com chaves primárias em ambas e uma chave estrangeira em uma. Na tabela "devedores", tenho o cadastro de devedores, com o CPF como indice e o campo cod_dev como chave primária. Na tabela titulos tenho cod_tit como chave primária e ref como chave estrangeira, ligada ao campo cod_dev da tabela devedores. O cadastro do nome do devedor é retornado por um componente DBLookupBox que retorna como KEY o campo CPF da tabela devedores.
Estou buscando uma rotina para inserir dados na tabela 2 (utilizando componente TFDQUERY no Delphi) onde eu consiga referenciar a chave estrangeira com o CPF da tabela titulos. Algo que em SQL eu consigo fazer utilizando um software de cliente (no meu caso o HeidiSQL) o qual comando em SQL ele faz assim:
Meu código para inserir dados na tabela é:
Alguém com uma ideia legal? =)
Obrigado...
Estou buscando uma rotina para inserir dados na tabela 2 (utilizando componente TFDQUERY no Delphi) onde eu consiga referenciar a chave estrangeira com o CPF da tabela titulos. Algo que em SQL eu consigo fazer utilizando um software de cliente (no meu caso o HeidiSQL) o qual comando em SQL ele faz assim:
UPDATE 'titulos' SET 'ref'='10' WHERE 'cod_tit'=4;
Meu código para inserir dados na tabela é:
SQL.Clear; SQL.Add('INSERT INTO titulos'); SQL.Add('(tipo, emissao, vencimento, credor, devedor,valor_ori, valor_corr)'); SQL.Add('VALUES (:tipo, :emissao, :vencimento, :credor, :devedor, :valor_ori, :valor_corr)'); ParamByName('tipo').AsInteger:= CB_Tipo_Tit.ItemIndex; ParamByName('emissao').AsDate:= StrToDate(MKE_Emissao_Tit.Text); ParamByName('vencimento').AsDate:=StrToDate(MKE_Vcto_Tit.Text); ParamByName('credor').AsString:=DBL_Cad_Cred.KeyValue; ParamByName('devedor').AsString:=DBL_Cad_Dev.KeyValue; ParamByName('valor_ori').AsFloat:= StrToFloat(ED_Valor_Orig_Tit.Text); ParamByName('valor_corr').AsFloat:= StrToFloat(ED_Valor_Corr_Tit.Text); ExecSQL;
Alguém com uma ideia legal? =)
Obrigado...
Matheus
Curtir tópico
+ 0
Responder
Posts
16/02/2021
Matheus
Estou buscando uma rotina para inserir dados na tabela 2
Por tabela 2, entenda-se tabela titulos
Responder
Clique aqui para fazer login e interagir na Comunidade :)