详细解释MySqlDataReader循环读取输出
网络整理 - 06-27
如何从SqlDataReader或MySqlDataReader中循环读取内容并输出
sqlserver和mysql的DataReader的用法完全一样,只是名字不同,以mysql为例
string connstr = "server=127.0.0.1;user=root;database=dbname;password=itjsxx.com;charset=utf8;Allow Zero Datetime=True"; using (MySqlConnection conn = new MySqlConnection(connstr)) { conn.Open(); MySqlCommand cmd = new MySqlCommand(sqlstr, conn); MySqlDataReader dr = cmd.ExecuteReader(); //将结果赋值到了dr,下面开始输出 while (dr.Read()) { MessageBox.Show(dr[0].ToString()); } }注意,这里的dr[0]代表当前读取到的行的第一列,第二列则是dr[1],后面的以此类推
MySqlDataReader的read方法的作用,是使 SqlDataReader 前进到下一条记录。
MySqlDataReader 的默认位置在第一条记录前面。 因此,必须调用 Read 来开始访问任何数据。
还有值得一提的是一个数据库连接一次只能打开一个SqlDataReader,如果要打开另一个reader,必须先关闭第一个
否则将会报错:
There is already an open DataReader associated with this Connection which must be closed first.
SqlDataReader|MySqlDataReader循环读取输出