Fórum SQL - Declaração de chave primaria #564262
19/10/2016
0
Ex.:
Assim?
CREATE TABLE TB_TESTE(
id_teste INTEGER,
PRIMARY KEY(id_teste),
);
ou
CREATE TABLE TB_TESTE(
id_teste INTEGER,
CONSTRAINT FK_TB_TESTE PRIMARY KEY(id_teste)
);
Marcelo Torres
Curtir tópico
+ 0Post mais votado
19/10/2016
A forma mais correta é a segunda.
Tem a ver, principalmente, com o nome da sua chave.
Fazendo com o primeiro comando, o banco vai dar o nome "dele" para a chave primária, enquanto no segundo comando você escolhe o nome que "achar melhor" (ou que seja padrão na empresa onde trabalha).
A título de curiosidade, você poderia ter criado assim também:
CREATE TABLE TB_TESTE( id_teste INT NOT NULL PRIMARY KEY );
Mas ai você cai no mesmo problema do primeiro comando (o banco escolhe o nome da sua chave)
Grande abraço
Luiz Santos
Gostei + 1
Mais Posts
19/10/2016
Marcelo Torres
Gostei + 0
19/10/2016
Luiz Santos
Você está confundindo o nome da chave com a coluna da chave.
Veja a explicação do comando em partes
CONSTRAINT PK_TB_TESTE PRIMARY KEY (ID_TESTE)
CONSTRAINT = RESTRIÇÃO
PK_TB_TESTE = NOME DA CHAVE. (Poderia chamá-la de "ZÉ", não devemos, óbvio, mas que pode, pode)
PRIMARY KEY = TIPO DA CONSTRAINT / RESTRIÇÃO
(ID_TESTE) = COLUNA EM QUE SERÁ APLICADA A CONSTRAINT / RESTRIÇÃO
Ficou claro?
Grande abs
Gostei + 1
19/10/2016
Marcelo Torres
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)