A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 杨伟芬 中级黑马   /  2012-4-13 20:30  /  1694 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

sqlcommand cmd=conn.createcommand()

sqldatareader reader=cmd.executereader()

string dbpassword =reader.getstring(reader.getordinal("password"));

这三句话都是什么意思,在程序中好像还调用了 reader.Read() 函数,这又是怎么来的,
对于网上的官方解释太深奥了,恳请简洁明了的解答,谢谢!

评分

参与人数 1技术分 +2 收起 理由
郑文 + 2

查看全部评分

2 个回复

倒序浏览
SqlConnection 是用来连接数据库的  SqlCommand是用来执行指令的  SqlDataReader是读取数据库了的数据的


cnd.ExecuteNonQuery(); //非查询,对添加,修改,删除作用 返回受影响的行数
cnd.ExecuteScalar();//执行查询,并返回查询所返回的结果集中第一行第一列,其他的忽略 返回值的类型是Object     (int i = Convert.ToInt32(cnd.ExecuteScalar()); //想要什么类型 就定义什么类型来接收. 无法将隐形Object转换成int  因此需要强制转换)
SqlDataReader reader = cnd.ExecuteReader()  读取数据库的数据
reader.Read() 是bool类型 一般与if()while()一起使用   意思前进到下一条记录 只要下面还有数据 就返回true  否则false

评分

参与人数 1技术分 +2 收起 理由
宋天琪 + 2

查看全部评分

回复 使用道具 举报
reader.GetString(1)  获取指定列(1)的字符串的值
reader.GetOrdinal("UserName"); 在给定名称(UserName)的情况下获取序列号
reader.GetString(reader.GetOrdinal("UserName"));上面的综合
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马