ExecuteScalar()方法的使用

执行查询,并返回查询所返回的结果集中第一行的第一列。所有其他的列和行将被忽略。

1、返回的是一个object类型,也就是说是所有数据类型的基类,可根据select所得的第一列的数据类型转换为对应的数据类型

例:

string strConn = "Data Source=(local);Initial Catalog=paperManage;Integrated Security=True";

SQLConnection objConn = new SQLconnection(strConn);

SQLCommand objCMD = new SQLCommand(strSQL,objConn);

object objResult = objCMD.ExecuteScalar() //或者 string result = objCMD.ExecuteScalar().toString();

 

2、当select语句无记录返回时,ExecuteScalar()返回NULL值,无法再将null值赋给任何对象或者变量,否则出现异常:System.NullReferenceException:   未将对象引用设置到对象的实例

例:

若select查询无返回记录,以下代码则会抛出异常:

try

{

   string result = objCMD.ExecuteScalar().toString();

}

catch(SQLException ee)

{

   MessageBox.show(ee.toString());

}

解决方法是先判断ExecuteScalar()是否为null,再进行相应的处理。

例:

        if (objCMD.ExecuteScalar() == null)

        {

               //为空时的操作

        }

        else

        {

               result = objCMD.ExecuteScalar().ToString().Trim();

        }

 

使用 ExecuteScalar() 方法从数据库中检索单个值(例如一个聚合值)。

典型的 ExecuteScalar() 查询可以采用类似于下面的 C# 示例的格式:

 

cmd.CommandText = "SELECT COUNT(*) FROM dbo.region";

Int32 count = (Int32) cmd.ExecuteScalar();

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值