private void button1_Click(object sender, EventArgs e)
{
try
{
SqlConnection conn = new SqlConnection("server=(local);initial catalog=db_test;integrated security=true");
conn.Open();//打开SQL中db_test数据库;并且打开此数据库;
//SqlCommand是用来执行Sql语句的对象,这里使用的构造函数为他初始化了查询语句,以及由哪个连接(conn)来执行它
//textBox1.Text.Trim()是去除两边的多除空格
SqlCommand cmd = new SqlCommand("select * from " + textBox1.Text.Trim(), conn);
//执行sql语句,必返回一个游标(IDataReader),这里是一个实现了IDataReader和SqlDataReader
SqlDataReader sdr = cmd.ExecuteReader();
//游标是只能向前进的(正常情况下,一行一行的读数据)
//此处是从开始位置(无数据)向前读一行(第一行数据)
sdr.Read();
//如果这一行有内容
if (sdr.HasRows)
{
//通过对话框显示“数据表中有值”
MessageBox.Show("数据表中有值");
}
else
{
//如果没有内容,则显示没有任何数据
MessageBox.Show("数据表中没有任何数据");
}
}
catch (Exception ex)//错误处理,如果在try代码中出现任何错误,会立刻到这里来
{
//ex.message就是错误信息
MessageBox.Show(ex.Message);
}
}
将textBox1的值(表名)传给cmd,然后用SqlDataReader读出该表的值,如果读出数据就执行IF语句,否则执行ELSE语句。
catch是捕捉异常
SqlCommand 数据库查询语句执行类
new SqlCommand("select * from "+textBox1.Text.Trim(), conn); 创建新查询 使用参数1的sql语句,使用参数2的数据库连接
SqlDataReader 数据读取器
cmd.ExecuteReader 执行sql命令返回数据读取对象(数据未读取)
sdr.Read(); 执行读取 (真读取)
sdr.HasRows 有无数据行
很简单啊,从 textBox1中 读取查询信息
(看起来textBox 中应该写的是表名)
然后判断查询结果是否有值。
有就输出"数据表中有值",没有就输出"数据表中没有任何数据"