1

我正在尝试使用Contains运算符。它适用于测试数据,例如。
WHERE CONTAINS(file,'"*ash*"')

但是,我想使用类似的东西从 TextBox 中获取关键字CONTAINS(file,'"*@key*"'),但这似乎不起作用。请有任何建议。

谢谢

4

1 回答 1

3

@ 用于在 SQL 中声明一个变量。因此,它不需要在引号内。例如:

DECLARE @Key varchar(100);
SET @Key = '*ash*'; 
SELECT file FROM SomeTable WHERE CONTAINS(file, @Key);

编辑:如果您通过代码传递内联 SQL,我会建议这样的事情:

C# 示例:

string key = textBox1.Text;
string query = "SELECT file FROM SomeTable WHERE ";
query += String.Format("CONTAINS(file, '\"*{0}*\"')", key);
于 2009-06-08T20:26:36.337 回答