Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Microsoft OLE DB Provider for SQL Server error '80040e


smez

Pergunta

boa tarde pessoal, esta dando o seguinte erro no meu site

Microsoft OLE DB Provider for SQL Server error '80040e14'

Incorrect syntax near 's'.

/console/empresa.asp, line 14

como eu faço no insert para aceitar o ' aspas simples o meu script esta assim

<%
    Academia = Request.Form("txtAcademia")
    Estrutura = Request.Form("txtEstrutura")
    Equipe = Request.Form("txtEquipe")
    Localizacao = Request.Form("txtLocalizacao")
    set upd = createobject("adodb.recordset")
    set upd.activeconnection = abredb
    SQL = "UPDATE Academia SET Academia = '"&Academia&"', Estrutura = '"&Estrutura&"', Equipe = '"&Equipe&"', Localizacao = '"&Localizacao&"' WHERE CdAcademia = 1"
    upd.open sql

%>

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

<%

Function makeStr(str)
  str = Trim(str)
  str = Replace(str, "'", "''")
  makeStr = str
End Function

Academia = makeStr(Request.Form("txtAcademia"))
Estrutura = makeStr(Request.Form("txtEstrutura"))
Equipe = makeStr(Request.Form("txtEquipe"))
Localizacao = makeStr(Request.Form("txtLocalizacao"))

set upd = createobject("adodb.recordset")
set upd.activeconnection = abredb
SQL = "UPDATE Academia SET Academia = '"&Academia&"', Estrutura = '"&Estrutura&"', Equipe = '"&Equipe&"', Localizacao = '"&Localizacao&"' WHERE CdAcademia = 1"
upd.open sql

%>

Usa essa função. Dependendo do BD que você utiliza, existem outros caracteres q gera erros (a barra: \ normalmente), quando isso acontecer, adiciona um replace na função, trocando um caracter q gera erro, por dois, mas será incluido apenas um no BD.

Abraço!

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...