No Firebird é obridado ter chave primária para gravar...?

Firebird

19/01/2008

Eu tenho esta tabela abaixo e não tem chave primária...
Não consigo gravar no IBExpert e nem no Delhi.

Da a seguinte mensagem: cannot post changes!
There is at least one record with same fields values!

SET SQL DIALECT 3;

SET NAMES ISO8859_1;



/******************************************************************************/
/*** Tables ***/
/******************************************************************************/

CREATE TABLE ESTOQUE (
CODIGO_EST VARCHAR(4),
PRODUTO PRODUTO,
QTDE QTE,
VALOR_UNI VALOR_UNI,
MINIMO INTEGER,
CODIGO_FOR INTEGER,
SAIDA INTEGER,
DENTRA CHAR(10)
);


Max2006

Max2006

Curtidas 0

Respostas

Max2006

Max2006

19/01/2008

Descobri que é obrigado criar chave primária. Só assim consegui gravar...

Não colocando a tabela e criado registro mas todos vazíos...


GOSTEI 0
Marcosrocha

Marcosrocha

19/01/2008

Estranho max2006. Tenho diversos sistemas que utilizam tabelas sem chave primária e eles gravam normalmente... :?


GOSTEI 0
Fred Tobject.create;

Fred Tobject.create;

19/01/2008

max2006

Da mesma forma q acontece com alguns sistemas em q eu dou manutenção, essa mensagem quer dizer q vc tem registros repetidos,
quer dizer, vc tem mais de um registro com exatamente os mesmo valores para todos os campos do registro.

Realmente uma chave primária, penso eu, não deixaria isso ocorrer, mas não é a causa do problema. Agora para retirar estes registros repetidos parece ser meio complicado pelo q eu andei pesquisando. Se alguem souber tb seria útil pra mim.


ahh essa é minha primeira msg no forum.
:)


GOSTEI 0
POSTAR