回答
文本"select * from tblpayroll where empid = userid"
将通过发送正是因为是到SQL后端,则userid
部分将不会被取代。所以,除非你有一个userid
列,否则你可能会得到一个错误。即使你做有一个userid
列,结果将不会是你所期望的。
您需要做什么取决于userid
是数值还是字符串值。对于数字,您可以使用:
"select * from tblpayroll where empid = " & CStr(userid)
这将首先将数字值转换为字符串并按原样进行检查。
对于字符串值,使用:
"select * from tblpayroll where empid = '" & userid & "'"
这将只需用引号括起来,以确保一个字符串比较的作品。您需要意识到,如果userid
未被清除,这是一个坏主意 - 它可能会导致SQL注入攻击。修复这个艺术超出了这个特定问题的范围,但值得记住。
如果您的变量是数字,但数据库字段是字符串,该怎么办是另一回事。你可以用CStr
和zero-padding来做,但由于这不太可能发生,所以我在这里没有记录它。
......这对我有帮助,但它只能得到一组记录。我的意思是,例如UserID的值是A52,因此,具有A52的用户ID的所有记录必须分别出现在文本框中。 – aer 2011-04-11 06:45:14
@aerohn,该查询将返回满足该条件的所有行。如果您只获得一个,那么(1)只有一行,如果该表是一个员工类型的表(每个员工一行)而不是一个payrun类型的表(例如,每个员工每行一行月);或者(2)您没有正确处理返回的行集。 – paxdiablo 2011-04-11 06:49:30
请看看我的工作。我编辑了我的问题... – aer 2011-04-11 07:57:20
显然,这是你的VB变量。
select * from tblpayroll where empid = '" & userid & "' "
使用这种方式,它会工作
- 1. Geany上的语法检查/纠正0.20
- 2. 不能纠正语法错误的PHP
- 3. 我需要做些什么来纠正这个SQL语句?
- 4. 如何纠正这个“SQL语法”在PHP和MySQL
- 5. 如何尝试替换文本后纠正SQL语法错误
- 6. 任何人都可以在这里纠正我的语法?
- 7. SQL:我的语法正确吗?
- 8. 我的sql语法不正确
- 9. 请帮我修正语法错误
- 10. 请告诉我,我在哪里wrom如何纠正它:
- 11. 如何纠正的if else语句
- 12. 在语法上纠正正常运行时间在C#
- 13. 更正SQL语法?
- 14. 我的sql语句语法错误,请帮忙!
- 15. 脚本检测 - 请纠正我的代码
- 16. 如何使用Mmap共享内存。请纠正我的代码
- 17. 纠正Mercurial错误的正确方法?
- 18. Oracle SQL语法:请选择
- 19. 不正确的语法SQL
- 20. 纠正这个XPath表达式请
- 21. 纠正htaccess的
- 22. AJAX请求不再指向纠正成功回调方法
- 23. 的LINQ - 优化/纠正我的查询
- 24. 语法错误,我不知道如何纠正C++代码。 (作业项目)
- 25. 如何纠正? - SQL Server查询
- 26. 如何纠正这个反应语法错误?
- 27. 如何纠正一个jQuery语法错误?
- 28. 我的SQL语法错误
- 29. 如何纠正我的案件陈述?
- 30. 如何纠正我的空例外?
你需要提供更多的细节。这是你正在写的存储过程吗? = @userid这是在你的VB代码?和userID是一个VB变量? ''select * from tblpayroll where empid =“&userId' – Prescott 2011-04-11 06:22:26
我已经提供了我的问题的更多细节......但我让它更简单...希望你能帮助我。在此先感谢 – aer 2011-04-11 07:58:38
请不要以自然完全改变的方式编辑您的问题。它使所有的答案日期无用。如果你有一个根本不同的问题(尽管关于同一个程序,它有根本的不同),请问另一个问题。 – paxdiablo 2011-04-11 08:20:37