使用SqlCommand执行SQL语句

1、构造函数

 1public SqlCommand()

  备注 

基构造函数将所有字段初始化为它们的默认值。 下表显示 SqlCommand 实例的初始属性值。

属性

初始值

CommandText

空字符串 ("")

CommandTimeout

30

CommandType

CommandType.Text

Connection

Null

通过单独调用属性,可以更改这些属性值中的任何一个。

 

2public SqlCommand(string cmdText)

用查询文本初始化 SqlCommand 类的新实例

3public SqlCommand (string cmdText,

SqlConnection connection)

初始化具有查询文本和 SqlConnection SqlCommand 类的新实例

2、常用属性

1public SqlConnection Connection { get; set; }

获取或设置 SqlCommand 的此实例使用的 SqlConnection

2public override string CommandText { get; set; }

获取或设置要对数据源执行的 Transact-SQL 语句、表名或存储过程

3public override CommandType CommandType { get; set; }

  获取或设置一个值,该值指示如何解释 CommandText 属性。

CommandType枚举值

成员名称

说明

Text

SQL 文本命令。 (默认。)

StoredProcedure

存储过程的名称。

TableDirect

表的名称。

 

备注: CommandType 属性设置为 StoredProcedure 时,CommandText 属性应设置为要访问的存储过程的名称。CommandType 属性设置为 TableDirect 时,应将 CommandText 属性设置为要访问的表的名称。 如果已命名的任何表包含任何特殊字符,那么用户可能需要使用转义符语法或包括限定字符。 当您调用执行”(Execute) 方法之一时,将返回命名表的所有行和列。 为了访问多个表,请使用逗号分隔的列表(没有空格或空白),其中包含要访问的多个表的名称。 CommandText 属性命名多个表时,返回指定表的联接。

 

3、使用SqlCommand的三种方法执行Sql语句

1public override int ExecuteNonQuery()

对连接执行-SQL语句并返回受影响的行数。在使用SqlCommand对象向数据库发送增、删、改命令时,通常使用该方法执行发送的Sql语句

对于 UPDATEINSERT DELETE 语句,返回值为该命令所影响的行数。 如果正在执行插入或更新操作的表上存在触发器,则返回值包括受插入或更新操作影响的行数以及受一个或多个触发器影响的行数。 对于其他所有类型的语句,返回值为 -1 如果发生回滚,则返回值也是 -1

异常

条件

SqlException

在对锁定的行执行该命令期间发生了异常。 如果使用的是 Microsoft .NET Framework 1.0 版,将不会生成该异常。

 

2public override Object ExecuteScalar()

执行查询,并返回查询所返回的结果集中第一行的第一列。如果结果集为空则返回空引用。通常与聚合函数一起使用

异常

条件

SqlException

在对锁定的行执行该命令期间发生了异常。 如果使用的是 Microsoft .NET Framework 1.0 版,将不会生成该异常。

3public SqlDataReader ExecuteReader()

CommandText 发送到 Connection 并生成一个包含数据的 SqlDataReader对象的实例

 

异常

条件

SqlException

在对锁定的行执行该命令期间发生了异常。 如果使用的是 Microsoft .NET Framework 1.0 版,将不会生成该异常。

InvalidOperationException

连接的当前状态为关闭。 ExecuteReader 需要打开的 SqlConnection

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值