Sql where子句的文本框值
这是获取文本框值并在where子句中使用它的正确方法吗?我建议不要像您提到的那样编写脚本;这将为注射铺平道路。如果不使用任何ORM技术,例如实体框架,这反过来也会带来自身的安全问题,请始终坚持使用参数化ado.net查询。看看通过这种方式构造语句,您可能会受到攻击,用户可能会对您的数据库运行额外的sql 您可以通过使用参数化sql来防止这种情况。然后在执行时传递查询和参数Sql where子句的文本框值,sql,asp.net,Sql,Asp.net,这是获取文本框值并在where子句中使用它的正确方法吗?我建议不要像您提到的那样编写脚本;这将为注射铺平道路。如果不使用任何ORM技术,例如实体框架,这反过来也会带来自身的安全问题,请始终坚持使用参数化ado.net查询。看看通过这种方式构造语句,您可能会受到攻击,用户可能会对您的数据库运行额外的sql 您可以通过使用参数化sql来防止这种情况。然后在执行时传递查询和参数 SELECT verlog.bearerid, detail.snum FROM verlog INNER JOIN d
SELECT verlog.bearerid, detail.snum
FROM verlog
INNER JOIN detail
ON verlog.txnid = detail.txnid
WHERE verlog.bearerid ='"+ TextBox1.Text +"'
更多详细信息可在此处阅读:
或者,您可以使用ORM为您处理此问题。仍然不工作似乎无法检索来自verlog的数据。请显示完整代码。。。它不清楚上下文——如果这是C#,它将不会编译,如果这是一个存储过程,它将给出一个错误。这是什么?还记得考虑SQL注入攻击。如果有人在文本框中输入
1'或1=1--
,会发生什么?很乐意帮忙。请按勾选标记为正确答案,而不是更新问题。这将有助于将来有同样问题的其他人。
SELECT verlog.bearerid, detail.snum
FROM verlog
INNER JOIN detail
ON verlog.txnid = detail.txnid
WHERE verlog.bearerid = @bearerid