急!!!ExecuteScalar和ExecuteReader问题
读取单行数据时,应该用哪个方法呢?ExecuteReader的read方法好像不能读取单行记录,当它一行读完时会自动跳到下行,直到读完为止。如果是用ExecuteScal...
读取单行数据时,应该用哪个方法呢?ExecuteReader的read方法好像不能读取单行记录,当它一行读完时会自动跳到下行,直到读完为止。
如果是用ExecuteScalar读取的是单行单列数据,但我刚在网上搜,好像可以读取整行记录的。请大家给点代码示例!!!越详细越好,谢谢!!
sql里面指定TOP 1,这是什么意思啊?能不能举例说明一下呢 展开
如果是用ExecuteScalar读取的是单行单列数据,但我刚在网上搜,好像可以读取整行记录的。请大家给点代码示例!!!越详细越好,谢谢!!
sql里面指定TOP 1,这是什么意思啊?能不能举例说明一下呢 展开
4个回答
展开全部
根据你说的情况,相信你已经成功从数据库中得到了数据!所以下面我就不写连接数据库什么什么的了!把主要的代码写给你看,代码如下:
//从SqlCommand对象中得到一个SqlDataReader对象.
SqlDataReader sqlDr = sqlCmd.ExecuteReader();
//Read()函数每次读取一行,返回一个bool值.如果要读取多行可以用while中~
if (sqlDr.Read())
{
string userName = sqlDr.GetString(0);
int userAge = sqlDr.GetInt32(1);
........
}
//记得要关闭sqlDr对象~
sqlDr.Close();
告一段落~谢谢`
//从SqlCommand对象中得到一个SqlDataReader对象.
SqlDataReader sqlDr = sqlCmd.ExecuteReader();
//Read()函数每次读取一行,返回一个bool值.如果要读取多行可以用while中~
if (sqlDr.Read())
{
string userName = sqlDr.GetString(0);
int userAge = sqlDr.GetInt32(1);
........
}
//记得要关闭sqlDr对象~
sqlDr.Close();
告一段落~谢谢`
展开全部
ExecuteScalar只能读一个数据(也就是数据表中的一个记录的某个字段),ExecuteReader你read一次就读一条记录啊
DataReader dr=cmd.ExecuteReader;
dr.Reader();
就只读了一条记录了。
select top1 字段列表 from tableName where 条件。
貌似是这样的 。。
DataReader dr=cmd.ExecuteReader;
dr.Reader();
就只读了一条记录了。
select top1 字段列表 from tableName where 条件。
貌似是这样的 。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sql里面使用top 1来限制返回的行啊
使用reader也行 直接使用reader.reader方法
然后读到1个实体里面然后返回该实体
使用reader也行 直接使用reader.reader方法
然后读到1个实体里面然后返回该实体
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ExecuteReader你读完一行就把reader关掉不就行了,他跳到下一行对你程序执行没有任何影响,或者你在sql里面指定TOP 1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询