在数据表的所有列中搜索字符串
本文关键字:搜索 字符串 数据表 | 更新日期: 2023-09-27 18:20:46
如果字符串存在于数据表中,我想搜索它并返回行。例如,我有一个包含"用户名"、"用户密码"等字段的数据表,。。。。等等。现在我的搜索文本将搜索所有字段,并返回包含字符串的行。
有人能帮忙吗
我在谷歌上搜索了一下。
我找到了两个解决方案,一个是
Select("Code LIKE '" + lastWord + "%'" );
但在这里,我与"代码"混淆了。
问候
尝试如下:
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%");
的操作
也可以参考这个答案。
你需要这样的东西吗http://vyaskn.tripod.com/search_all_columns_in_all_tables.htm来自Narayana Vyas。我以前用过它,它很管用。它搜索给定数据库中所有表的所有列。
如果没有,这个怎么样
DataRow[] filteredRows = datatable.Select(string.Format("{0} LIKE '%{1}%'", columnName, value));
OR检查在所有DataTable列中查找字符串
其中一个解决方案是类似于这个
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
}
}
希望这能帮助