Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

carneirinho

[Resolvido] Insert into não funciona

Recommended Posts

Oi pessoal, o que parecia uma coisa simples está exuzando a minha vida, acontece tenho um arquivo .mdb ele faz select mas o insert into não funciona, ele da o seguinte erro:

 

Microsoft JET Database Engine erro '80040e14'

 

Erro de sintaxe na instrução INSERT INTO.

 

Tirei o include e deixei tudo no mesmo asp para testar, mas não vai de jeito nenhum, o asp tem o seguinte:

 

Set Conexcao = Server.CreateObject("ADODB.Connection")

caminho_banco = Server.MapPath("../dados/dados.mdb")

conConecta = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & caminho_banco

Call Conexcao.open(conConecta)

sql = "Insert into usuario (user, password, nome, email) VALUES ('" & var_user & "', '" & var_pass & "', '" & var_nome & "', '" & var_email & "')"

response.write(sql)

Conexcao.Execute(sql)

Esse response.write está retornando Insert into usuario (user, password, nome, email) VALUES ('aa', 'aa', 'aa', 'aa')

 

Pensei que fosse configuração do IIS mas nem online está funcionando, alguem sabe o que pode ser isso que está acabando com a minha vida? J mudei os campos de data para texto pra ver se não era incompatibildade mas não foi :(

 

abraço,

 

Carneirinho

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hmm, eu alterei usuário para us, mas mesmo assim continua o erro, ele retornou:

 

Insert into usuario (us, password, nome, email) VALUES ('teste', 'teset', 'test', 'tet')

 

Microsoft JET Database Engine erro '80040e14'

 

Erro de sintaxe na instrução INSERT INTO.

 

eu usei aqui o adovbs.inc com:

 

RS.Addnew

RS("us") = Request("txtuser")

 

e foi de boa, mas to intrigado porque que o select não funciona, se quiser eu compacto os arquivos e posto pra você dar uma olhada, oh semana de zica, acho que meu anjo da guarda é estagiário.

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloque todas entre colchetes nao precisa mudar

 

vou ver se password é reservado mas por hora apenas adicione os colchetes e veja se continua com o erro de sintaxe

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não se é o caso mas eu costumo montar com uns detalhes a mais ... que seguem em negrito

 

 

Set Conexcao = Server.CreateObject("ADODB.Connection")

caminho_banco = Server.MapPath("../dados/dados.mdb")

conConecta = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & caminho_banco & "" * fecho aspas aqui

Call Conexcao.open(conConecta)

 

sql = "INSERT INTO usuario (user, password, nome, email) VALUES ('" & var_user & "', '" & var_pass & "', '" & var_nome & "', '" & var_email & "')"

 

response.write(sql)

 

Conexcao.Execute sql sem parenteses no execute

'fechar

Conexcao.Close

set Conexcao = Nothing

Compartilhar este post


Link para o post
Compartilhar em outros sites

o erro continua nesta linah? o mesmo erro? colocou os colchetes em todos os campos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi Pessoal, desculpa a demora, ainda nã otestei pois os arquivos estão na empresa, só vou testar na segunda, o pior é que tenho o IIS instalado na maquina com outro sistema tb em asp e a mesma query funciona no outro sistema, mas vou testar a dica de vcs, a única coisa que estou vendo é na conexão do banco, em uma estou usando caminho fisico do pc do tipo c:.... dados.mdb e nesse estou usando ../../ porem a conexão vai porque os selects funcionam. Mas segunda vejo todas as opções e posto aqui. abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

no aguardo entao

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mudei no banco a tabela passwor pra senha e mesmo assim não foi, como seria colocar tudo em colchetes? testei essas duas querys:

 

sql = "Insert into usuario (us, password, nome, email) VALUES ('" & var_user & "', '" & var_pass & "', '" & var_nome & "', '" & var_email & "')"

 

sql = "INSERT INTO usuario (us) VALUE ('" & var_user & "'); INSERT INTO usuario (senha) VALUE ('" & var_pass & "'); INSERT INTO usuario (nome) VALUE ('" & var_nome & "'); INSERT INTO usuario (email) VALUE ('" & var_email & "')"

 

e não foi :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala Carneirinho, beleza?

 

Então, testei aqui alterando na tabela o nome dos campos "user" e "password" e funcionou Ok com a "sql" anterior:

sql = "INSERT INTO usuario (us, pass, nome, email) VALUES ('" & var_user & "','"& var_pass &"','" & var_nome & "','" & var_email & "')"

O Mário sugeriu o uso de colchetes, e também funcionou sem a necessidade de alterar o nome dos campos na tabela (mais uma que aprendi com esse cara..):

sql = "INSERT INTO usuario ([user], [password], [nome], [email]) VALUES ('" & var_user & "','"& var_pass &"','" & var_nome & "','" & var_email & "')"

Veja se agora vai! Abs.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que o problema era mesmo a palavra reservada, quando testei usei:

 

sql = "Insert into usuario (us, password, nome, email) VALUES ('" & var_user & "', '" & var_pass & "', '" & var_nome & "', '" & var_email & "')"

 

porem esqueci de trocar password pra senha, que tinha trocado no banco de dados, problemas de atenção, depois que o Public postou que funcionou dois dois modos (essa de colchetes é novo pra mim) tb foi normal, notei que só tinha esquecido mesmo de testar com o nome da tabela do banco certo, é estranho esse sql, quando você tem la um campo "senha" e busca pelo campo "password" ele não aceita :P

 

enfim, ta ai a faixa

 

"Agradeço a Public2004, Mário Monteiro, Sto. Expedito e a todos pela graça alcançada"

GHC

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tranquilo entao

 

Que bom qeu tudo foi resolvido

 

E quanto aos colchetes é otimo pois podemos continuar usando as palavras que mais sao sugestivas sem a preocupação se seriam reservadas

 

Coltumo usar muito este recurso

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.