用like执行查询不起作用

时间:2014-12-30 13:02:04

标签: c# sql .net sql-server sql-server-2008

我有这段代码:

string query = "SELECT * FROM dbo.customer WHERE mobileNumber Like '%@mobileNumber'";

当我从c#执行该代码时,我得到了空结果

然而,当我在我的sql managmenet studio

中执行此查询时
SELECT * FROM dbo.customer WHERE mobileNumber Like '%454545'

我得到了结果。

我缺少什么?

2 个答案:

答案 0 :(得分:4)

试试这个:

string query = "SELECT * FROM dbo.customer WHERE mobileNumber Like '%' + @mobileNumber

这是假设@mobileNumber是一个包含您要搜索的值的参数。

答案 1 :(得分:2)

从您的代码中可以看出@mobileNumber是一个参数。但是,您将其放在string

尝试将%放入string并将参数单独取消引用:

string query = "SELECT * FROM dbo.customer WHERE mobileNumber Like '%' + @mobileNumber";