ERRO DE SINTAXE INSERT INTO VB6
boa noite. To com um problema...Este codigo estava funcionando corretamente, ai inserir mais um campo na tabela (campo 5), e agora ta dando erro de sintaxe...se tirar o campo funciona normal...segue o codigo ...
sSQL = [Ô]SELECT * FROM DBF [Ô]
Set RS = Conexao.Execute(sSQL)
Conexao.Execute [Ô]INSERT INTO DBF (RESP, NDC, CODIGO, DATA, QTD, DESC, VALOR) VALUES[Ô] & _
[Ô]([ô][Ô] & MSFlexGrid1.TextMatrix(r, 0) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 1) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 2) & _
[Ô][ô],[ô][Ô] & Replace(MSFlexGrid1.TextMatrix(r, 3), [Ô][ô][Ô], [Ô][ô][ô][Ô]) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 4) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 5) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 6) & [Ô][ô])[Ô]
[ô]todos os campos sao numeros apenas este e data [Ô][ô],[ô][Ô] & Replace(MSFlexGrid1.TextMatrix(r, 3), [Ô][ô][Ô], [Ô][ô][ô][Ô]) & _
na tabela estao todos os campos escrits corretamente...desde ja agradeço...
sSQL = [Ô]SELECT * FROM DBF [Ô]
Set RS = Conexao.Execute(sSQL)
Conexao.Execute [Ô]INSERT INTO DBF (RESP, NDC, CODIGO, DATA, QTD, DESC, VALOR) VALUES[Ô] & _
[Ô]([ô][Ô] & MSFlexGrid1.TextMatrix(r, 0) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 1) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 2) & _
[Ô][ô],[ô][Ô] & Replace(MSFlexGrid1.TextMatrix(r, 3), [Ô][ô][Ô], [Ô][ô][ô][Ô]) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 4) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 5) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 6) & [Ô][ô])[Ô]
[ô]todos os campos sao numeros apenas este e data [Ô][ô],[ô][Ô] & Replace(MSFlexGrid1.TextMatrix(r, 3), [Ô][ô][Ô], [Ô][ô][ô][Ô]) & _
na tabela estao todos os campos escrits corretamente...desde ja agradeço...
Coloque o seu sql montado em uma variável e verifique a sintaxe, vai ficar muito mais fácil. O ideal é que comece a usar parametrização nas suas chamadas SQL, isso evita uma série de aborrecimentos futuros, incluindo o famigerado SQL Injection.
ENGLESSON,
Dá um print na estrutura da tabela (campos, datatypes, tamanho...etc) e posta aqui para o pessoal poder analisar melhor.
Dá um print na estrutura da tabela (campos, datatypes, tamanho...etc) e posta aqui para o pessoal poder analisar melhor.
Esta faltando um espaço aqui:
VALUES[Ô] & _
correto: VALUES [Ô] & _
Mas, siga o conselho do KERPLUNK.
Assim fica mais facil encontrara esses erros.
VALUES[Ô] & _
correto: VALUES [Ô] & _
Mas, siga o conselho do KERPLUNK.
Citação:Coloque o seu sql montado em uma variável e verifique a sintaxe
Assim fica mais facil encontrara esses erros.
O marcado de vermelho faz parte exclusiva do programa.
Ele significa DECRESCENTE.Isto todos nos sabemos, mas não usamos com campo de tabela.
Muitos esquecem desse detalhe.
Faça a mudança do nome do campo.
No Access acusa erro.
Conexao.Execute [Ô]INSERT INTO DBF (RESP, NDC, CODIGO, DATA, QTD, [txt-color=#e80000]DESC[/txt-color], VALOR) VALUES[Ô] & _
[Ô]([ô][Ô] & MSFlexGrid1.TextMatrix(r, 0) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 1) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 2) & _
[Ô][ô],[ô][Ô] & Replace(MSFlexGrid1.TextMatrix(r, 3), [Ô][ô][Ô], [Ô][ô][ô][Ô]) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 4) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 5) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 6) & [Ô][ô])[Ô]
Ele significa DECRESCENTE.Isto todos nos sabemos, mas não usamos com campo de tabela.
Muitos esquecem desse detalhe.
Faça a mudança do nome do campo.
No Access acusa erro.
Conexao.Execute [Ô]INSERT INTO DBF (RESP, NDC, CODIGO, DATA, QTD, [txt-color=#e80000]DESC[/txt-color], VALOR) VALUES[Ô] & _
[Ô]([ô][Ô] & MSFlexGrid1.TextMatrix(r, 0) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 1) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 2) & _
[Ô][ô],[ô][Ô] & Replace(MSFlexGrid1.TextMatrix(r, 3), [Ô][ô][Ô], [Ô][ô][ô][Ô]) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 4) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 5) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 6) & [Ô][ô])[Ô]
Só complementando o que o OMAR disse sobre o campos com nomes de palavras reservadas. é possÃvel utilizar sim, desde que se ponha entre [ ].
No comando assim ficaria
No comando assim ficaria
INSERT INTO DBF (RESP, NDC, CODIGO, DATA, QTD, [txt-color=#e80000][DESC][/txt-color], VALOR) [Ô] & _
[Ô]([ô][Ô] & MSFlexGrid1.TextMatrix(r, 0) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 1) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 2) & _
[Ô][ô],[ô][Ô] & Replace(MSFlexGrid1.TextMatrix(r, 3), [Ô][ô][Ô], [Ô][ô][ô][Ô]) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 4) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 5) & _
[Ô][ô],[ô][Ô] & MSFlexGrid1.TextMatrix(r, 6) & [Ô][ô])[Ô]
Muito bom FFCOUTO, é vivendo e aprendendo.
Vou fazer um teste agora.
Depois posto o resultado.
Valeu.
Vou fazer um teste agora.
Depois posto o resultado.
Valeu.
Pessoal desculpe a demora em responder, tive problema aqui...o erro e o que o OMAR disse, fiz o que o ffcouto falou e deu certo, muito obrigado pessoal....
Também testei.Positivo
Agora feche o tópico.
Agora feche o tópico.
Tópico encerrado , respostas não são mais permitidas