MySQL / Classic ASP – 参数化查询
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了MySQL / Classic ASP – 参数化查询,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1830字,纯文字阅读大概需要3分钟。
内容图文
在绝对紧急情况下,我试图浏览我的网站并添加参数化查询.我是新手,刚刚了解了他们.
我的问题是,我只知道很少关于连接类型和我看到的所有示例都使用其他连接方法,这让我感到困惑.我不是特别想改变我连接到我的数据库的方式,因为它在很多页面上,我只是想更新我的查询更安全.
这就是我连接到我的数据库的方式:
Set connContent = Server.CreateObject("ADODB.Connection")
connContent.ConnectionString = "...blah...blah...blah..."
connContent.Open
这是带参数的SQL位:
username = Trim(Request("username"))
connContent.Prepared = True
Const ad_nVarChar = 202
Const ad_ParamInput = 1
SQL = " SELECT * FROM users WHERE (username=?) ; "
Set newParameter = connContent.CreateParameter("@username", ad_nVarChar, adParamInput, 20, username)
connContent.Parameters.Append newParameter
Set rs = connContent.Execute(SQL)
If NOT rs.EOF Then
' Do something...
End If
rs.Close
它显然不起作用,但我需要知道我是否可以使用我的连接实际实现这一点,或者我完全错过了一些阻止它工作的东西?
在我出去接下来的两天调试一些我不熟悉的东西之前,我想知道我至少在正确的轨道上……
解决方法:
第二个代码段中的代码是正确的,但应该应用于新的ADODB.Command对象,而不是应用于Connection对象:
username = Trim(Request("username"))
'-----Added this-----
Dim cmdContent
Set cmdContent = Server.CreateObject("ADODB.Command")
' Use this line to associate the Command with your previously opened connection
Set cmdContent.ActiveConnection = connContent
'--------------------
cmdContent.Prepared = True
Const ad_nVarChar = 202
Const ad_ParamInput = 1
SQL = " SELECT * FROM users WHERE (username=?) ; "
Set newParameter = cmdContent.CreateParameter("@username", ad_nVarChar, ad_ParamInput, 20, username)
cmdContent.Parameters.Append newParameter
cmdContent.CommandText = SQL
Set rs = cmdContent.Execute
If NOT rs.EOF Then
' Do something...
End If
rs.Close
顺便说一句,有一个拼写错误的adParamInput拼写而不是ad_ParamInput(在我的例子中更正).
内容总结
以上是互联网集市为您收集整理的MySQL / Classic ASP – 参数化查询全部内容,希望文章能够帮你解决MySQL / Classic ASP – 参数化查询所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。