[英]How to use Wildcard Search Parameterized?
public DataTable Search()
{
DataTable dt = new DataTable();
SqlCommand searchcommand = new SqlCommand(
"Select * from [ITEM MASTER] WHERE Item_Description LIKE '%' @Item_Description '%' ", con);
searchcommand.Parameters.Add("@Item_Description", SqlDbType.NVarChar).Value = search;
SqlDataAdapter da = new SqlDataAdapter(searchcommand);
da.Fill(dt);
return dt;
}
这是我的代码。 我需要有关如何使用面向对象编程创建参数化搜索的帮助
正如Nathan所说,只需在@Item_Description
参数的两侧添加+
。 这将它与命令字符串的其余部分连接在一起 。
SqlCommand searchcommand = new SqlCommand("Select * from [ITEM MASTER] WHERE Item_Description LIKE '%' + @Item_Description + '%' ", con);
如果要使代码稍微更具可读性,可以使用@
来生成逐字字符串 。 除其他外,逐字字符串允许我们将字符串放在多行上,如下所示:
SqlCommand searchcommand = new SqlCommand(
@"Select *
from [ITEM MASTER]
WHERE Item_Description
LIKE '%' + @Item_Description + '%' ", con);
为了更加可读性,您可以将字符串放入其自己的变量中,将T-SQL关键字放入所有大写字母中,并在命令文本末尾添加分号,如下所示...
var commandText = @"
SELECT *
FROM [ITEM MASTER]
WHERE Item_Description
LIKE '%' + @Item_Description + '%';
";
SqlCommand searchcommand = new SqlCommand(commandText, con);
在我看来,当你在维护工作中遇到它时,这个更好看。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.