ASP 错误 没有为一个或多个必需参数指定值
Posted
技术标签:
【中文标题】ASP 错误 没有为一个或多个必需参数指定值【英文标题】:ASP Error No value given for one or more required parameters 【发布时间】:2014-08-28 17:31:44 【问题描述】:我在 ASP 登录时收到以下错误
Microsoft JET 数据库引擎错误“80040e10” 没有为一个或多个必需参数指定值。 /vdateUsr.asp,第 47 行
数据正在表单中输入并在 Access 数据库中进行检查。代码如下:
' variables
dim cnStr
dim rcSet
dim frmUsername
dim frmPassword
dim sqlStr
dim strSQL
'store form input into variables
frmUsername = Request.Form("username")
frmPassword = Request.Form("password")
'create connection and recordset objects
Set cnStr = Server.CreateObject("ADODB.Connection")
Set rcSet = Server.CreateObject("ADODB.Recordset")
' defining database connection (connectionstring.asp)
cnStr.ConnectionString = path
cnStr.Provider = provider
cnStr.open
' execute sql and open as recordset
sqlStr = "Select * From users where [User Name] = ('" & frmUsername & "') and [Password] = ('" + frmPassword + "')"
strSQL="SELECT startup site FROM users WHERE [User Name] = ('" & frmUsername & "') and [Password] = ('" & frmPassword & "')"
' Opens the returned values from the SQL as a recordset, ready for iteration by ASP
'Line 47 below
set rcSet = cnStr.Execute(sqlStr)
任何帮助将不胜感激。
提前致谢
【问题讨论】:
在第 47 行之前添加一行response.write(sqlSTR)
和第二行 response.end
。然后看看输出的 SQL... 看起来像 frmusername 和 frmpassword 有值吗?此外......认真考虑使用参数化查询。这有导致站点黑客攻击的 SQL 注入问题。方法如下:***.com/questions/770419/…
recommend this 也会详细解释一些您可以反复使用的技术。
【参考方案1】:
从 Excel 加载以存储在 SQL Server 中时,我们遇到了这个确切的错误。原因是我们使用了源 Excel 中不存在的列 [F6](文件格式已更改)。因此,“参数”可以是一列。
【讨论】:
以上是关于ASP 错误 没有为一个或多个必需参数指定值的主要内容,如果未能解决你的问题,请参考以下文章