我想搜索一个字符串,如果它存在于数据表中并返回行。例如,我有一个数据表,其中包含用户名,用户密码等字段。现在我的搜索文本将搜索所有字段并返回包含字符串的行。
有人可以帮忙解决这个问题 我用Google搜索了它 我找到了几个解决方案,一个是
Select("Code LIKE '" + lastWord + "%'" );
但在这里我对“代码”感到困惑。
此致
答案 0 :(得分:0)
尝试以下内容:
try
{
SqlCommand cmd=new SqlCommand("select * from tableName where UserName LIKE '%' + @search + '%'", conn);
cmd.Parameters.AddWithValue("@search",searchbox.text);
SqlDataAdapter da=new SqlDataAdapter(cmd,con);
DataSet ds=new Dataset();
da.Fill(ds);
//From here you can extract data in DataSet
}
catch(exception ex)
{
}
可以试试SqlMethods。
执行SqlMethods.Like(str,"%searchbox.text%");
也可以参考this回答。
答案 1 :(得分:0)
你是否需要来自Narayana Vyas的http://vyaskn.tripod.com/search_all_columns_in_all_tables.htm这样的东西。 我之前使用它并且它有效。它搜索给定数据库中所有表的所有列。
如果没有,这个怎么样
DataRow[] filteredRows = datatable.Select(string.Format("{0} LIKE '%{1}%'", columnName, value));
或检查Find a string in all DataTable columns
答案 2 :(得分:0)
其中一个解决方案就是这样
for(int i=0;i<MyDataset.Tables[0].Columns.count;i++)
{
DataRow[] MyDR=MyDataset.Tables[0].Select(MyDataSet.Tables[0].Columns[i].ToString()+"='"+MyText+"'");
if(MyDr.Length>0)
{
//You Found the item
}
}
希望这有帮助