Jump to content
Fórum Script Brasil
  • 0

Delphi/Firebird - Quatro chaves primárias, sendo que para validar teria que ser somente uma associada as 4 chaves


Fábio da Cruz

Question

Pessoal bom dia
Estou desempregado, já trabalhei com Delphi e Cobol, agora voltei a desenvolver em Delphi e estou sem saber a solução das chaves primárias e preciso de um favor de vocês.
Utilizo Delphi Embarcadero® RAD Studio 11 Version 28.0.48361.3236, Firebird 4.0, IBExpert 4.14.1.
Preciso criar uma chave primária de quatro colunas (BCO_AGENCIA, BCO_DIG_AGENCIA , BCO_CONTA, BCO_DIG_CONTA), mas o Projeto tem que ver duplicidade somente na chave (PK_CAD_BANCO).

Ex: Quando eu for validar o Banco e Conta se já estão cadastrados, verificar pela chave (PK_CAD_BANCO), isso é possível?
Motivo:

A coluna BCO_AGENCIA poderá haver duplicidade, pois poderá existir várias contas do mesmo banco.

A  chave BCO_CONTA também poderá haver duplicidade, pois bancos diferentes poderá ter o mesmo número de conta.

Mas o mesmo banco não pode existir o mesmo número de conta

Caso tenha que deixar somente uma chave(sequencial, incrementada de 1), para validar teria que unir colunas digitada (BCO_AGENCIA, BCO_DIG_AGENCIA , BCO_CONTA, BCO_DIG_CONTA), e ver se ela existe no bco, como faço isso?


Exemplo: (valores fictícios)
AGência BB Conta
6522-0 7020-X   
ß
1234-5 7020-X   ß
 

6522-0 2535-8
6522-0 1258-X
6522-0 2255-X

***-------------------- CADASTRO DE BANCOS
CREATE TABLE CAD_BANCOS
(
BCO_AGENCIA INTEGER NOT NULL,
BCO_DIG_AGENCIA CHAR (01) NOT NULL,
BCO_CONTA INTEGER NOT NULL,
BCO_DIG_CONTA CHAR (01) NOT NULL,
BCO_NOME CHAR (15),
BCO_SIGLA CHAR (02),
BCO_TIPO CHAR (20),
BCO_DDD_FIXO INTEGER,
BCO_TEL_FIXO INTEGER,
BCO_DDD_CEL INTEGER,
BCO_TEL_CEL INTEGER,
BCO_CONTATO CHAR (15),

 

CONSTRAINT PK_CAD_BANCO

PRIMARY KEY (BCO_AGENCIA, BCO_DIG_AGENCIA , BCO_CONTA, BCO_DIG_CONTA)
);

Desde já, obrigado

 

 

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.1k
    • Total Posts
      651.8k
×
×
  • Create New...