16进制的代码?
您是指这样的吗?CAST(0x7400610062006C0065003100 AS NVARCHAR(4000))
但是这个会被包含在' '里,不予执行啊
解决方案 »
- 求asp.net中如何实现定时功能?
- DevExpress.NET 中的ASPxNavBar 动态创建问题
- asp.net中怎么做 文章列表
- 一个十分简单的问题!
- DataGrid中DropdownList遮住表头的问题
- 求一个IE5.5的下载地址,要日文版的
- datagrid选中一行,该行背景变色后,如何在再次选择另一行让上次被选的行恢复原色?
- 高难度问题,.net和数据库的
- 在.net中怎么在GridView里删除一条记录
- 谁能给我看看这个幻灯片HTML文件为什么显示的幻灯片不更换?
- 微信测试号进行接入验证总是提示配置失败
- ASP.NET WEB程序如何实现预览 WORD EXCEL PPT文件?
你要把所有的关键字过滤掉也可以
sql = "select Id,title from Texts where Title like '%'+@Keyword+'%'";
然后改写你的GetTable()方法,
使之能够传入SqlParameter参数
连字符串内容中包含正常的单引号进行搜索都进行不了了,还讨论什么注入啊?!如果我们一个程序员会用sql语句,最起码地他会写合乎t-sql语法且结果正确的查询语句。
最保险的办法是用参数,如果你是用like查,可以这样写
sql = "select Id,title from Texts where Title like '%' + @Keyword + '%'";
DataTable dt = DB.GetTable(sql, new SqlParameter("Keyword", "it's a dog");
不过按你的说法,你们公司存在大量的这种拼接,GetTable有没有带参数的重载还是个问题。
“系统不需要进行这个用例的必要”?只有根本检查不出来任何BUG的用例才没有必要写。哪有说可以检出问题的用例是”没必要的“呢?很难说你们的编程(或者小一点范围,你和你的领导)是基于实践的。比如说你说“因为没有单引号,所以没有必要写针对它的测试”,那么你有什么必要写出这个 Replace("'","'') 代码来呢?这类自相矛盾、总也在纠结是非的事情你们干了很多次吧?