ExecuteScalar()方法

ExecuteScalar()方法ExecuteScalar()方法也用来执行SQL语句,但是ExecuteScalar()执行SQL语句后的返回值与ExecuteNonQuery()并不相同,ExecuteScalar()方法的返回值的数据类型是Object类型。如果执行的SQL语句是一个查询语句(SELECT),则返回结果是查询后的第一行的第一列,如果执行的SQL语句不是一个查询语句,则会返回一个未实例化的对象,必须通过类型转

大家好,又见面了,我是你们的朋友全栈君。

ExecuteScalar()方法也用来执行SQL语句,但是ExecuteScalar()执行SQL语句后的返回值与ExecuteNonQuery()并不相同,ExecuteScalar()方法的返回值的数据类型是Object类型。如果执行的SQL语句是一个查询语句(SELECT),则返回结果是查询后的第一行的第一列,如果执行的SQL语句不是一个查询语句,则会返回一个未实例化的对象,必须通过类型转换来显示,示例代码如下所示。

            string str = “server='(local)’;database=’mytable’;uid=’sa’;pwd=’sa'”;       //创建连接字串

            SqlConnection con = new SqlConnection(str);                                          //创建连接对象

            con.Open();                                                                                                        //打开连接

            string strsql = “select * from mynews order by id desc”;

            SqlCommand cmd = new SqlCommand(strsql, con);

            Label1.Text = “查询出了Id为” + cmd.ExecuteScalar() \;                           //使用ExecuteScalar查询

通常情况下ExecuteNonQuery()操作后返回的是一个值,而ExecuteScalar()操作后则会返回一个对象,ExecuteScalar()经常使用于当需要返回单一值时的情况。例如当插入一条数据信息时,常常需要马上知道刚才插入的值,则可以使用ExecuteScalar()方法。示例代码如下所示。

            string str = “server='(local)’;database=’mytable’;uid=’sa’;pwd=’sa'”;       //创建连接字串

            SqlConnection con = new SqlConnection(str);                                          //创建连接对象

            con.Open();                                                                                                        //打开连接

            string strsql = “insert into mynews values (‘刚刚插入的id是多少?’)

            SELECT  @@IDENTITY  as  ‘bh'”;                                                           //插入语句

            SqlCommand cmd = new SqlCommand(strsql, con);                             //执行语句

            Label1.Text = “刚刚插入的行的id是” + cmd.ExecuteScalar();                 //返回赋值

上述代码使用了SELECT  @@IDENTITY语法获取刚刚执行更新后的id值,然后通过使用ExecuteScalar()方法来获取刚刚更新后第一行第一列的值。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/147736.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月29日 下午10:16
下一篇 2022年6月29日 下午10:16


相关推荐

  • 即梦ai提示词为什么我的生的不一样

    即梦ai提示词为什么我的生的不一样

    2026年3月13日
    3
  • Linux下svn服务器迁移

    Linux下svn服务器迁移Linux下svn服务器迁移1.介绍迁移方式:1.由于项目工作需要进行svn服务器的迁移,对此简要介绍svn服务器的迁移方案。2.主要迁移方式:svnadmindumpsvnadminhotcopysvnsync3.【svnadmindump】是官方推荐的备份方式。优点:比较灵活,可以全量备份也可以增量备份,并提供了版本恢复机制。缺点:如果版本比较大,如版本数增长到数…

    2022年7月19日
    16
  • RSA算法原理简介

    RSA算法原理简介RSA 加密算法是最常用的非对称加密算法 CFCA 在证书服务中离不了它 但是有不少新来的同事对它不太了解 恰好看到一本书中作者用实例对它进行了简化而生动的描述 使得高深的数学理论能够被容易地理解 我们经过整理和改写特别推荐给大家阅读 希望能够对时间紧张但是又想了解它的同事有所帮助 RSA 是第一个比较完善的公开密钥算法 它既能用于加密 也能用于数字签名 RSA 以它的三个发明者 RonRives

    2026年3月17日
    2
  • 三期_day12_其它+jetty的使用

    三期_day12_其它+jetty的使用

    2022年2月3日
    43
  • C的Invoke与BeginInvoke区别

    C的Invoke与BeginInvoke区别分析 浅谈 C 中 Control 的 Invoke 与 BeginInvoke 在主副线程中的执行顺序和区别 SamWang 今天无意中看到有关 Invoke 和 BeginInvoke 的一些资料 不太清楚它们之间的区别 所以花了点时间研究了下 据 msdn 中介绍 它们最大的区别就是 BeginInvoke 属于异步执行的 Control Invoke 方法 Delegate 在拥有此控件的基

    2026年3月19日
    2
  • Python中的join()函数

    Python中的join()函数原网址 https www geeksforgeek org join function pythonPython 中的 join 函数 join 是一个字符串方法 它返回被子字符串连接的字符串 语法 string name join iterable string name 这是被连接的子字符串 参数 Thejoin methodtakesj 方法需要可迭

    2026年3月19日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号