|
本帖最后由 秋日的枫叶 于 2013-5-19 11:22 编辑
在学习数据库的时候遇到一个问题
我查询数据库中数据
通过reader.Read()和while方法
将他们输入到richbox中
代码如下
[code=csharp]
string conn = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True";
SqlConnection sql = new SqlConnection(conn);
sql.Open ();
SqlCommand cmd = sql.CreateCommand();
cmd.CommandText = "select * from Mp_User";
SqlDataReader reader = cmd.ExecuteReader();
while(reader.Read ())
{
string Name =reader.GetString(0);
string age = reader.GetString(1);
richTextBox1.AppendText("用户名是:"+Name+"年龄是:"+age+"\n");
}
//如果这里加return也不合适,因为下面还有很多语句要执行
MessageBox.Show("数据库中没有数据");//这句一定被执行了,我想是在没有数据的情况下才执行。
reader.Dispose();
cmd.Dispose();
sql.Dispose();
//其他要执行的语句
[/code]
问题:
如果数据库中没有数据,我想他弹出对话框,提示错误
但是while语句执行后,肯定会执行这个messagebox。我也不能再messagebox上面加return
因为后面还有语句要执行?有什么办法吗?
能让while结合if?
----------------是我逻辑错误,应该不存在这样的情况----------
int i = 0;
while(i<=10)
{
i++;
}
MessageBox.Show("i的值大于10");
用这样的代码看起来更清楚。
|
|