我要检查数据库中是否存在“ jin”。
但是我现在可以在ASP.NET中找到正确的标志。
我认为这意味着我在第二列的第一栏中找不到“ jin”,
我放了时间表。
我的代码不起作用..帮助我。
{{1}}
答案 0 :(得分:0)
如果您要一次在所有列中搜索jin
,一种选择是将列取消转为行,然后进行条件聚合:
select max(case when x.val = 'jin' then 1 else 0 end) found
from time t
cross apply (values
([11:00AM]),
([11:30AM]),
([12:00PM]),
([12:30PM]),
...
) x(val)
这将生成一个名为found
的标量结果集(单行单列),如果该值在1
行构造函数中列出的列中的任何位置存在,则包含values()
,和0
(如果没有)。
答案 1 :(得分:0)
您可以直接在查询中包括对“ jin”的检查,一旦执行,就可以检查sqldatareader是否有任何行。
在下面的示例中,我仅包括了前两列,但您可以包括其余部分。
SqlConnection con = new SqlConnection();
con.ConnectionString = @"Data Source=IT\SQLEXPRESS;Initial Catalog=Gentl;Persist
Security Info=True;User ID=sa;Password=sjin101!";
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "select * From Time where 11:00AM= \"jin\" or 12:00AM = \"jin\"";
cmd.Connection = con;
SqlDataReader rd = cmd.ExecuteReader();
if(rd.HasRows()) {
TextBox1.Text = "Find";
}
else
TextBox1.Text = "no";