Count of Read-write Columns Does Not Equal Count of Values

ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.

Exibir mensagem anterior :: Exibir próxima mensagem
Autor Mensagem
joao_arthur
Profissional
Profissional

Registrado: Sexta-Feira, 10 de Novembro de 2006
Mensagens: 687
Localização: Fortaleza-CE


Mensagem Enviada: Ter Out 02, 2007 10:07 pm   Assunto: Count of read-write columns does not equal count of values Responder com Citação

pessoal estou me deparando com este erro ao tentar gravar registro

erro:

Dynamic SQL Error
SQL error code = -804
Count of read-write columns does not equal count of values

estou usando bd firebird

Código:
case operacao of
1: begin
with DM.IBQProduto do
begin
close;
SQL.Clear;
SQL.Add('insert into produtos (prod_cod, prod_descricao, prod_preco, prod_codbarra, '+
'prod_referencia1, prod_referencia2)');
SQL.Add(' values (:pDescricao, :pPreco, :pCodBarra, :pReferencia1, :pReferencia2)');
ParamByName('pDescricao').Value:= mskDescricao.Text;
ParamByName('pPreco').Value:= StrToFloat(mskPreco.Text);
ParamByName('pCodBarra').Value:= mskCodBarras.Text;
ParamByName('pReferencia1').Value:= mskRefSofstix.Text;
ParamByName('pReferencia2').Value:= mskRefSiga.Text;
ExecSQL;
end;
DM.IBTransaction1.CommitRetaining;
end;
end;

o campo prod_cod é autoIncremento eu criei um generator a associei ele ao mesmo no componente IBQuery
_________________
João Arthur.

Voltar ao Topo

Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger

adriano_servitec
Colaborador
Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004
Mensagens: 17605


Mensagem Enviada: Ter Out 02, 2007 10:25 pm   Assunto: Responder com Citação

Não é pq tem campos a + do que os parametros estão passando?

Este campo prod_cod, precisa estar junto na hora de incluir, já que ele é um autoincremento?

Código:
case operacao of
1: begin
with DM.IBQProduto do
begin
close;
SQL.Clear;
SQL.Add('insert into produtos (prod_descricao, prod_preco, prod_codbarra, '+
'prod_referencia1, prod_referencia2)');
SQL.Add(' values (:pDescricao, :pPreco, :pCodBarra, :pReferencia1, :pReferencia2)');
ParamByName('pDescricao').Value:= mskDescricao.Text;
ParamByName('pPreco').Value:= StrToFloat(mskPreco.Text);
ParamByName('pCodBarra').Value:= mskCodBarras.Text;
ParamByName('pReferencia1').Value:= mskRefSofstix.Text;
ParamByName('pReferencia2').Value:= mskRefSiga.Text;
ExecSQL;
end;
DM.IBTransaction1.CommitRetaining;
end;
end;

Veja ai, qualquer coisa post novamente
_________________
Jogo quiz seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.descubraresposta
https://play.google.com/store/apps/details?id=br.com.couldsys.desafiobiblico

Voltar ao Topo

Ver o perfil de Usuários Enviar Mensagem Particular

joao_arthur
Profissional
Profissional

Registrado: Sexta-Feira, 10 de Novembro de 2006
Mensagens: 687
Localização: Fortaleza-CE


Mensagem Enviada: Ter Out 02, 2007 10:33 pm   Assunto: Responder com Citação

Adriano se eu tiro o prod_cod la no insert ele diz:

validation error column PROD_COD, value ***null***

como se eu estivesse tentando incluir esse campo sem valor sendo que ele é autoIncremento....eu nao entendo....

o que pode ta errado??

Código:

case operacao of
1: begin
with DM.IBQProduto do
begin
close;
SQL.Clear;
SQL.Add('insert into produtos (prod_descricao, prod_preco,   prod_codbarra, '+
'prod_referencia1, prod_referencia2)');
SQL.Add(' values (:pDescricao, :pPreco, :pCodBarra, :pReferencia1, :pReferencia2)');
ParamByName('pDescricao').Value:= mskDescricao.Text;
ParamByName('pPreco').Value:= StrToFloat(mskPreco.Text);
ParamByName('pCodBarra').Value:= mskCodBarras.Text;
ParamByName('pReferencia1').Value:= mskRefSofstix.Text;
ParamByName('pReferencia2').Value:= mskRefSiga.Text;
ExecSQL;
end;
DM.IBTransaction1.CommitRetaining;
end;
end;

_________________
João Arthur.
Voltar ao Topo

Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger

adriano_servitec
Colaborador
Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004
Mensagens: 17605


Mensagem Enviada: Ter Out 02, 2007 10:48 pm   Assunto: Responder com Citação

Isso me parece que é pq a trigger de autoincremento não está disparando, na hora que vc grava.
_________________
Jogo quiz seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.descubraresposta
https://play.google.com/store/apps/details?id=br.com.couldsys.desafiobiblico
Voltar ao Topo

Ver o perfil de Usuários Enviar Mensagem Particular

joao_arthur
Profissional
Profissional

Registrado: Sexta-Feira, 10 de Novembro de 2006
Mensagens: 687
Localização: Fortaleza-CE


Mensagem Enviada: Ter Out 02, 2007 11:31 pm   Assunto: Responder com Citação

Adriano eu não tinha criado a trigger ainda o estranho é porque tenho programas em firebird que uso o IBDataSet pra inserir os dados eu associo o generator ao campo e ele grava certinho mas como estou usando o IBQuery passando parametros ele da erro se nao tiver a trigger....nao sei porque mas agora deu certo depois que eu criei a trigger
Código:
SET TERM ^ ;
CREATE TRIGGER T_PRODUTOS FOR PRODUTOS
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
NEW.PROD_COD = GEN_ID(GEN_PRODUTO, 1);
END^
SET TERM ; ^

valeu pela força....

ps.: no IBQuery também tem a opção de associar o generator ao campo desejado..mas me parece que nao funciona...
_________________
João Arthur.

Voltar ao Topo

Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger

waltercbma
Novato
Novato

Registrado: Domingo, 9 de Mai de 2010
Mensagens: 2


Mensagem Enviada: Dom Mai 09, 2010 7:31 pm   Assunto: Responder com Citação

pessoal estou me deparando com este erro ao tentar gravar registro

erro:

Dynamic SQL Error
SQL error code = -804
Count of read-write columns does not equal count of values

estou usando bd firebird

Voltar ao Topo

Ver o perfil de Usuários Enviar Mensagem Particular

waltercbma
Novato
Novato

Registrado: Domingo, 9 de Mai de 2010
Mensagens: 2


Mensagem Enviada: Dom Mai 09, 2010 7:33 pm   Assunto: Responder com Citação

ja conferir os campos está a mesma quantidade de parametros
Voltar ao Topo

Ver o perfil de Usuários Enviar Mensagem Particular

Mostrar os tópicos anteriores:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.

Count of Read-write Columns Does Not Equal Count of Values

Source: http://www.activedelphi.com.br/forum/viewtopic.php?t=35643&sid=4039492ca08ba82f4e59839007841b27

0 Response to "Count of Read-write Columns Does Not Equal Count of Values"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel