Fórum Firebird #380087
24/06/2010
0
Alexsander
Curtir tópico
+ 0Posts
24/06/2010
Maurício Zanatta
além da chave primária e da configuração de not null para o campo id, você precisa ter também um generator e uma trigger para gerar o o autoincremento se for um id do tipo código (neste artigo aqui explica isso: https://www.devmedia.com.br/articles/viewcomp.asp?comp=1070)
Se não for este o caso, essa mensagem ocorre quando se tem configurado na base de dados um campo not null, e não se está preenchendo o campo com algum valor.
E se você estiver usando os componentes DBExpress, verifique também a propriedade Required, que caso esteja True, também exigirá que o campo referido seja preenchido.
[]s.
Gostei + 0
29/06/2010
Carlos Mazzi
Gostei + 0
29/06/2010
Alexsander
Gostei + 0
30/06/2010
Maurício Zanatta
Gostei + 0
01/07/2010
Alexsander
Gostei + 0
01/07/2010
Alexsander
ID_CONTATO INTEGER NOT NULL,
CONTATO VARCHAR(30) COLLATE WIN_PTBR,
IDADE CHAR(3),
FOTO BLOB SUB_TYPE 1 SEGMENT SIZE 80,
NASCIMENTO VARCHAR(9),
EMAIL VARCHAR(20) COLLATE WIN_PTBR,
SIGNO VARCHAR(20) COLLATE WIN_PTBR,
TIPOSANGUINIO VARCHAR(5),
TELEFONE VARCHAR(14),
CELULAR VARCHAR(14),
N CHAR(7),
CIDADE VARCHAR(20) COLLATE WIN_PTBR,
RUA VARCHAR(20) COLLATE WIN_PTBR,
CEP VARCHAR(10),
ESTADO CHAR(2) COLLATE WIN_PTBR,
BAIRRO VARCHAR(30) COLLATE WIN_PTBR
);
Gostei + 0
01/07/2010
Emerson Nascimento
CREATE GENERATOR GEN_CONTATO_ID; -- cria o generator
CREATE TABLE CONTATO (
ID_CONTATO INTEGER, -- note que não tem mais o NOT NULL
CONTATO VARCHAR(30) COLLATE WIN_PTBR,
IDADE CHAR(3),
FOTO BLOB SUB_TYPE 1 SEGMENT SIZE 80,
NASCIMENTO VARCHAR(9),
EMAIL VARCHAR(20) COLLATE WIN_PTBR,
SIGNO VARCHAR(20) COLLATE WIN_PTBR,
TIPOSANGUINIO VARCHAR(5),
TELEFONE VARCHAR(14),
CELULAR VARCHAR(14),
N CHAR(7),
CIDADE VARCHAR(20) COLLATE WIN_PTBR,
RUA VARCHAR(20) COLLATE WIN_PTBR,
CEP VARCHAR(10),
ESTADO CHAR(2) COLLATE WIN_PTBR,
BAIRRO VARCHAR(30) COLLATE WIN_PTBR
);
/* Trigger: CONTATO_BI */
CREATE TRIGGER CONTATO_BI FOR CONTATO
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID_CONTATO IS NULL) THEN
NEW.ID_CONTATO = GEN_ID(GEN_CONTATO_ID,1);
END
Gostei + 0
02/07/2010
Euclides Cunha
Ex:
???.ParamByName('ID').Value := 1;
...
...
???.post
claro, gravando por meio da função post de componentes do Delphi.
Gostei + 0
02/07/2010
Alexsander
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)