我有一个4栏的网格,即标题,描述,关键字,日期在C#.net 与搜索按钮和文本框。由存储过程或函数生成的动态查询
当我写标题+描述+关键字+日期时,它将通过单击搜索按钮返回相关数据。
如果我编写关键字+日期+保留描述和标题为null,它将返回来自网格的相关数据。等这个4列的其他组合。
也就是说,它是在每列和组合领域搜索动态变化
我希望有一个存储过程或函数它在SQL SERVER。提前
我有一个4栏的网格,即标题,描述,关键字,日期在C#.net 与搜索按钮和文本框。由存储过程或函数生成的动态查询
当我写标题+描述+关键字+日期时,它将通过单击搜索按钮返回相关数据。
如果我编写关键字+日期+保留描述和标题为null,它将返回来自网格的相关数据。等这个4列的其他组合。
也就是说,它是在每列和组合领域搜索动态变化
我希望有一个存储过程或函数它在SQL SERVER。提前
,您可以创建四个参数(各为你的选择)的程序和下面的SQL
CREATE PROC Search(
@title VARCHAR(20) NULL, ...
AS SELECT * FROM your_table WHERE (title = @title OR @title IS NULL) etc.
反正什么建议吗?..谢谢,你应该分析输入获得值为每个参数。因此,当您将null传递给@title参数时,WHERE条件(title = @title OR @title IS NULL)
将始终为真。
在C#中做一个函数,传递它包含列名和表名的字符串数组,这个函数将返回查询字符串。
public string BuildQuery(string[] columnNames, string tableName)
{
string query = string.Empty;
query = "SELECT ";
foreach(string str in columnNames)
query += str + ", ";
query = query.Substring(0, query.Length - 1);
query += " FROM " + tableName;
return query;
}
您是否解决了问题?如果是,那么如果您发现它真的有帮助,则将所有答案都标记为已接受。 – 2011-05-11 12:18:25