Ir para conteúdo

POWERED BY:

Arquivado

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

Khelly

problemas com insert

Recommended Posts

Fala galera to eu aki de novo , com mais um abaxi pra descascar, seguinte estou ontando uma pagina de cadastro mas esta ocorrendo um erro q deve ser uma bobeira porem nao estou conseguindo achar onde esta o erro. a mensagem eh a seguinte.

 

Microsoft JET Database Engine error '80040e14'

Syntax error in INSERT INTO statement.

/comunita/manager/acao_noticias.asp, line 12 

meu codigo esta assim

 

<%

ConnString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=e:\home\depaola1\dados\comunita.mdb;"
Set Conexao = Server.CreateObject("ADODB.Connection")
Conexao.Open ConnString

If Request.Form("acao") = "Incluir nova Notícia" Then
		conexao.execute("Insert into noticias (id,titulo,subtitulo,texto,data) values (" & Request("id") & ",'"& Request("titulo") & "','" & Request("subtitulo") & "','" & Request("texto") & "','" & Request("data") & "')")
		
		Response.Redirect("item=noticias")
		
		
	
	
	End If

If Request.Form("acao") = "Alterar dados" Then

'recebe data ( dd/mm/yyyy )e da um split para transformar em array
data = Request.Form("DataNoticia")
array_data = split(data,"/")
dia = array_data(0)
mes = array_data(1)
ano = array_data(2)
'coloca no formato do banco
data_mysql = ano & "-" & mes & "-" & dia


	Conexao.Execute "UPDATE Noticias SET IdAutor="& Request.Form("IdAutor") &",IdEditoria="& Request.Form("IdEditoria") &",IdCaderno="& Request.Form("IdCaderno") &", DataNoticia='"& data_mysql &"' ,hora='"& Replace(Request.Form("hora"),"'","''") &"',TituloNoticia='"& Replace(Request.Form("TituloNoticia"),"'","''") &"',sobtitulonoticia='"& Replace(Request.Form("sobtitulonoticia"),"'","''") &"',SubTituloNoticia='"& Replace(Request.Form("SubTituloNoticia"),"'","''") &"',TextoNoticia='"& Replace(Request.Form("TextoNoticia"),"'","''") &"',IdImagem="& Request.Form("IdImagem") &",FotoLegenda='"& Replace(Request.Form("FotoLegenda"),"'","''")  &"',DestaqueNoticia="& Request.Form("DestaqueNoticia") &",DestaqueNoticia2="& Request.Form("DestaqueNoticia2") &",DestaqueNoticia3="& Request.Form("DestaqueNoticia3") &",DestaqueNoticia4="& Request.Form("DestaqueNoticia4") &",ResumoDestaque='"& Replace(Request.Form("ResumoDestaque"),"'","''")  &"' WHERE IdNoticia="& Request.Form("IdNoticia")
	Response.Redirect("home.asp?item=noticias")
End If

If Request.Form("acao") = "Apagar dados" Then
	Conexao.Execute "DELETE FROM Noticias WHERE IdNoticia="& Request.Form("IdNoticia")
	Response.Redirect("home.asp?item=noticias")
End If

Conexao.Close
Set Conexao = Nothing
%>

desde ja agradeço a ajuda galera


Compartilhar este post


Link para o post
Compartilhar em outros sites

escreva na tela o valor que esta tentando executar em seu INSERT, deve ter algo errado ou algum valor não sendo passado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual banco de dados você esta utilizando?

 

 

Se for access e seu campo campo "data" for do tipo datetime use # como separador:

 

Assim

......#" & Request("data") & "#

 

Outra dica que lhe sugiro, só mesmo como melhor pratica e para faciltar a leitura do código, jogue o request em variáves assim:

<%
id			= Request("id")
titulo		= Request("titulo")
subtitulo	= Request("subtitulo")
texto		= Request("texto")
data 		= Request("data")
conexao.execute("Insert into noticias (id,titulo,subtitulo,texto,data) values (" & id & ",'"& titulo & "','" & subtitulo & "','" & texto & "','" & data & "')")
%> 	

Facilita para você e principalmente para que irá ajudá-la.

 

Não quer dizer que usar os campos do request diretamente seja errado, porém jogando para variáveis seu código fica mais limpo e fácil de efetuar manutenção.

 

Imagina se você tive de altarer o nome de um campo de request de data para data_inclusao. Se você utilizar o request na construção dos suas expressões SQL irá ter de alterar em varias parte so código.

Se utilziar variáveis ira alterar somente onde a variável é criada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verifique a ortografia. pode ser um nome de coluna Invalido 'sua_coluna'. A coluna a qual você se refere na Base de Dados não foi encontrada.

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.