C# 如何判断执行的存储过程查询结果是否为空?
我是想做一个站内资料的搜索,在A页上键入关键字,然后在B页上显示搜索结果有资料的话显示,没资料的话就显示提示语句。问题是用什么来判断数据库中是否有这个资料?用哪个类的哪个...
我是想做一个站内资料的搜索,在A页上键入关键字,然后在B页上显示搜索结果有资料的话显示,没资料的话就显示提示语句。
问题是用什么来判断数据库中是否有这个资料?用哪个类的哪个方法?求各位高手支个招。。。我整了好久都没用。。。。求代码
还是不懂,下面是我判断查询结果是否为空的代码,不知道错在哪?
SqlConnection Conn = GetConnection();
Conn.Open();
SqlCommand mycmd = new SqlCommand("proc_FInfo", Conn);
mycmd.CommandType = CommandType.StoredProcedure;
mycmd.Parameters.Add("@reasearch", SqlDbType.VarChar, 50).Value = TextBox1.Text;
mycmd.ExecuteNonQuery();
SqlDataAdapter da = new SqlDataAdapter("proc_FInfo", Conn);
DataSet ds = new DataSet();
da.Fill(ds);
if (ds.Tables[0].Rows.Count==0)
{
Response.Write("<script>alert('对不起,输入错误!')</script>");
Response.Redirect("A.aspx");
}
else
{ Response.Redirect("B.aspx");}
}
*textbox1放的是搜索关键字,“research”是关键字在存储过程里的名字;点搜索的效果是没反应。。。 展开
问题是用什么来判断数据库中是否有这个资料?用哪个类的哪个方法?求各位高手支个招。。。我整了好久都没用。。。。求代码
还是不懂,下面是我判断查询结果是否为空的代码,不知道错在哪?
SqlConnection Conn = GetConnection();
Conn.Open();
SqlCommand mycmd = new SqlCommand("proc_FInfo", Conn);
mycmd.CommandType = CommandType.StoredProcedure;
mycmd.Parameters.Add("@reasearch", SqlDbType.VarChar, 50).Value = TextBox1.Text;
mycmd.ExecuteNonQuery();
SqlDataAdapter da = new SqlDataAdapter("proc_FInfo", Conn);
DataSet ds = new DataSet();
da.Fill(ds);
if (ds.Tables[0].Rows.Count==0)
{
Response.Write("<script>alert('对不起,输入错误!')</script>");
Response.Redirect("A.aspx");
}
else
{ Response.Redirect("B.aspx");}
}
*textbox1放的是搜索关键字,“research”是关键字在存储过程里的名字;点搜索的效果是没反应。。。 展开
展开全部
方法太多了,存储过程里面可以加返回值,然后C#接收返回值。
或者说SqlDataAdapter.Fill(DataSet);
然后判断DataSet.Tables[0].Rows.Count是否等于0
等等
或者说SqlDataAdapter.Fill(DataSet);
然后判断DataSet.Tables[0].Rows.Count是否等于0
等等
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一种方法,是在存储过程里面判断,设定一个返回参数来判断,这样效率高,速度快;
当然最简单就是判断返回结果集,比如dr=结果,如果dr==null就是空了。
用F10单步执行跟踪跟踪看看。
当然最简单就是判断返回结果集,比如dr=结果,如果dr==null就是空了。
用F10单步执行跟踪跟踪看看。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用(dr表示Datarow)
dr["name"]!=System.DBNull.Value
也可以用下面的方法
dr["name"].ToString()!=""
dr["name"]!=System.DBNull.Value
也可以用下面的方法
dr["name"].ToString()!=""
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询