[firebase-br] Insert
Adriano Ferreira
aerreira68 em gmail.com
Sex Maio 1 14:59:33 -03 2009
Não conheço Visual Fox Pro, mas acho que o erro está na sintaxe do seu INSERT. Experimente talvez trocar as aspas duplas dentro do comando SQL por aspas simples.
Mas veja que o comando que te pasei foi:
_INS="INSERT INTO TESTE (CODIGO, NOME, VALOR) VALUES ("+_COD+", "+_NOM+","+_VAL+")"
e você fez:
_INS="INSERT INTO TESTE (CODIGO, NOME, VALOR) VALUES ("+_COD","+_NOM+","+_VAL+")"
Há uma diferença sutil no sinal de + após _COD, mas ainda assim, como são valores caracter e numérico, então acho que seria algo mais ou menos assim:
_INS="INSERT INTO TESTE (CODIGO, NOME, VALOR) VALUES ('"+_COD+"', '"+_NOM+"',"+str(_VAL)+")"
Observe que antes do +_COD existe uma aspas simples ' e depois uma aspas dupla " e depois tem uma aspas dupla " seguido de uma aspas simples ' E o comando str(_VAL) seria ara converter o valor numero para string, mas em fox pro não sei qual é o comando, e neste caso não exitem as aspas simples antes e depois.
_
Adriano Ferreira
----- Original Message -----
From: ARNOPAZ-FUTURA Informatica/Locadora/LanHouse
To: FireBase
Sent: Friday, May 01, 2009 2:22 PM
Subject: Re: [firebase-br] Insert
Sim, o certo é "_deu" invéz de "kdeu";
o INCERT assim:
_INS="INSERT INTO TESTE (CODIGO, NOME, VALOR) VALUES
("+_COD","+_NOM+","+_VAL+")"
o VFP dá erro na sintaxe.
O problema está antes do commit, pois _INS está retornando -1.
Obrigado pela atenção.
Arno R. Paz
Tres Cachoeiras - RS
2009/5/1 Adriano Ferreira <aerreira68 em gmail.com>
> O comando para confirmar o insert é o COMMIT que conclui a transação
> corrente.
>
> Este seu comando SQLCOMMIT(kdeu) não deveria ser SQLCOMMIT(_deu) ?
>
> E também, acho que precisa ajustar a sintaxe da linha abaixo:
>
> _INS="INSERT INTO TESTE (CODIGO, NOME, VALOR) VALUES ("+_COD+", "+_NOM+",
> "+_VAL+")"
>
>
> Esse seu código não estava apresentando erro não?
> _
> Adriano Ferreira
> www.sssinformatica.com.br
> " Antes de imprimir, pense em seu compromisso com o Meio Ambiente "
>
> ----- Original Message -----
> From: ARNOPAZ-FUTURA Informatica/Locadora/LanHouse
> To: FireBase
> Sent: Friday, May 01, 2009 11:11 AM
> Subject: Re: [firebase-br] Insert
>
>
> Não uso Delphi. Programo em VFP9 - c/ SP2.
> -------------------------------------------------------------------------
> Eis o código:
>
> STORE Sqlstringconnect("Driver=Firebird/InterBase(r) driver;Dbname=" +
> 'f:\'
> + 'futura2009' + ";PWD=" + 'masterkey' + ";UID=" + 'SYSDBA') TO _deu
> thisform.text1.Value=_deu
>
> SQLEXEC(_deu,"select * from teste","_teste")
>
> _cod=1
> _nom='FUTURA'
> _VAL=1000.00
>
>
> _INS="INSERT INTO "TESTE" ("CODIGO", "NOME", "VALOR") VALUES (_COD, _NOM,
> _VAL)"
>
> _fez=SQLEXEC(_DEU,_INS)
>
> SQLCOMMIT(kdeu)
>
> SQLEXEC(_deu,"select * from teste","_teste")
>
> thisform.grid1.RecordSource='_teste'
>
>
> -----------------------------------------------------------------------------
>
> o _FEZ retorna -1
>
>
> ------------------------------------------------------------------------------------
>
> Arno R. Paz
>
> 2009/5/1 Anderson Miranda Barrozo <andersonpaduarj em gmail.com>
>
> > Bom dia,
> >
> > Vc. usa Firebird e os componentes dbexpress ?
> > Anderson Miranda
> >
> >
> > 2009/5/1 ARNOPAZ-FUTURA Informatica/Locadora/LanHouse <
> > futura1999 em gmail.com>
> >
> > > Buenas;
> > > Existe algum comando a ser usado após o INSERT para que o registro
> fique
> > > gravado na tabela ??
> > >
Mais detalhes sobre a lista de discussão lista