Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql where子句的文本框值_Sql_Asp.net - Fatal编程技术网

Sql where子句的文本框值

Sql where子句的文本框值,sql,asp.net,Sql,Asp.net,这是获取文本框值并在where子句中使用它的正确方法吗?我建议不要像您提到的那样编写脚本;这将为注射铺平道路。如果不使用任何ORM技术,例如实体框架,这反过来也会带来自身的安全问题,请始终坚持使用参数化ado.net查询。看看通过这种方式构造语句,您可能会受到攻击,用户可能会对您的数据库运行额外的sql 您可以通过使用参数化sql来防止这种情况。然后在执行时传递查询和参数 SELECT verlog.bearerid, detail.snum FROM verlog INNER JOIN d

这是获取文本框值并在where子句中使用它的正确方法吗?

我建议不要像您提到的那样编写脚本;这将为注射铺平道路。如果不使用任何ORM技术,例如实体框架,这反过来也会带来自身的安全问题,请始终坚持使用参数化ado.net查询。看看

通过这种方式构造语句,您可能会受到攻击,用户可能会对您的数据库运行额外的sql

您可以通过使用参数化sql来防止这种情况。然后在执行时传递查询和参数

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