SQL2005和C#结合编程时,ExecuteScalar这个方法不太明白

如图,backRecognize最后的值是一个包括“管理”的字符串。而有时候做验证的时候也用(int)commandXXXXXXX.ExecuteScalar()是否大于... 如图,backRecognize最后的值是一个包括“管理”的字符串。而有时候做验证的时候也用(int)commandXXXXXXX.ExecuteScalar()是否大于0来判断。
我就想问问,ExecuteScalar这个方法到底是干什么用的呢?返回的值是什么呢?
VS2005的解释中:并返回查询所返回的结果集中第一行的第一列。这个第一行是指什么?第一列又是指什么?
如果按照图中的例子来说:那么结果集就是“管理”,这个集中的第一行也是“管理”,那么第一行的第一列在哪里呢?
展开
 我来答
宇宙之心眼
2012-11-17 · TA获得超过623个赞
知道小有建树答主
回答量:610
采纳率:100%
帮助的人:417万
展开全部
返回的是第一行第一列的值。如果这个值是int的,那就用(int)拆箱,如果是string,那就用.ToString()获取值。
第一行第一列指的是你Select语句返回的表的第一行第一列。你的图中返回的也就只有一列,所以管理也就是在第一列了。
leiyuan179zcs
2012-11-17 · TA获得超过100个赞
知道小有建树答主
回答量:275
采纳率:0%
帮助的人:159万
展开全部
你这个第一行第一列的值是 身份的值。
如果你查询
select 身份,验证,密码 from table_Userinfo
ExecuteScalar()只返回第1行身份的值,验证,密码的值会忽略掉.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
leafly0719
2012-11-17 · TA获得超过117个赞
知道答主
回答量:64
采纳率:0%
帮助的人:50.8万
展开全部
其实这个方法用的最多的是类似这样的SQL语句"Select count(*) from table1;",这样的sql语句返回的就是一行一列的数据。
简单的例子:
用户登录:
用户输入用户名密码后,点击“登录”按钮,程序将用户输入的用户名密码与数据库中比对,如果有相符的,则登录成功,否则失败。此时使用"Select count(*) from [User] where Uid={0} and pwd={1};"(注意sql注入),那么用ExecuteScalar就很简单地返回这个数据了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5456381
2012-11-17 · 超过126用户采纳过TA的回答
知道小有建树答主
回答量:451
采纳率:0%
帮助的人:251万
展开全部
返回首行首列的值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式