datareader对象提供只读单向数据的快速传递,单向:你只能依次读取下一条记录;只读:datareader中的数据是只读的,不能修改;相对的,dataset中的数据可以任意读取和修改。
SqlDataReader有一个很重要的方法,read,是个bool值。作用是前进到下一条数据,一条条的返回数据 。当bool为真时返回数据,为假时跳出。
while(dr.Read()) { Response.write(dr["UserName"] } dr.close();
用这种方法不仅能判断用户名是否合法,还可以很方便地获取更多关于该用户的信息,其中,我比较喜欢用的是string Password = reader["UserPassword"].ToString();这种方法,但是这种方法似乎不能获取int类型的字段数据,比如这里的 UserId,只能用int UserID = reader.GetInt32(0);这种方法获取它的值。不知道用字段名有没有方法获取到UserId的值。