繁体   English   中英

用于SQL Server的Microsoft OLE DB提供程序错误“80040e14”'='附近的语法不正确

[英]Microsoft OLE DB Provider for SQL Server error '80040e14' Incorrect syntax near '='

当我尝试使用以下代码从数据库中检索数据时,我收到此错误。

有人可以帮忙吗?

set rs = Server.CreateObject("ADODB.recordset")
sql = " SELECT * from COMPANY WHERE COMPANY_ID = " & Request.Form("CompanyId")
rs.Open sql, cnn

首先,在不使用参数的情况下进行即席查询是不好的做法。 SQL注入攻击信息: http//en.wikipedia.org/wiki/SQL_injection

但是,要回答这个问题,您需要在您要搜索的varchar或char值周围使用单引号。

set rs = Server.CreateObject("ADODB.recordset")
sql = " SELECT * from COMPANY WHERE COMPANY_ID = '" & Request.Form("CompanyId") & "'"
rs.Open sql, cnn

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM