Console.WriteLine("成功连接到数据库!"); Console.WriteLine("data sourc:{0}",conn.DataSource); Console.WriteLine("database name:{0}",conn.Database); Console.WriteLine("client name:{0}",conn.WorkstationId); SqlCommand cmd=new SqlCommand("select CategoryID,CategoryName from Categories",conn); SqlDataReader dr=cmd.ExecuteReader(); while(dr.Read()){Console.WriteLine("\t{0}\t{1}",dr.GetInt32(0),dr.GetString(1));}dr.Close(); conn.Close();}catch(Exception e){Console.WriteLine("无法连接到数据库!"); DataReader的意思就是数据阅读器,它是以类似于指针的形式读取数据库里面的记录,具有效率高的特点。使用Read()方法可以将满足查询的记录依次读取出来,类似于指针的Next()方法。使用while循环可以读取到全部记录,读取到最后一条记录时退出循环。返回的值为Object类型,可以进行转换以得到需要的数据。 示例:while(reader.Read()){string name = reader["name"].ToString(); // name为查询语句中的name列}注意使用datareader必须及时关闭,否则会与数据库建立长连接,消耗数据库的连接数。关闭连接使用Close()方法或使用Using方法让系统帮你自动释放。 具体可参考MSDN SqlDataReader.Read()方法。