用于执行数据库操作。
System.Data.SqlClient.SqlCommand 对象 | 专用于连接 SQL SERVER 数据库 |
System.Data.OleDb.OleDbCommand 对象 | 专用于连接 OLEDB 数据库 |
属性 | 描述 |
---|---|
CommandText | 查询语句,可为:SQL 命令、存储过程、表名等 |
CommandTimeout | 超时设置,默认为 30 秒,设为 0 永不超时 |
CommandType | 命令类型
CommandType.StoreProcedure |
Connection | Connection 对象 |
Parameters | ParameterCollection 集合 |
Transaction | Transaction 对象,事务日志 |
UpdateRowSource | 当 DataAdapter.Update 时,结果应用到行的方式
UpdateRowSource.FirstReturnRecord |
方法 | 描述 |
---|---|
Cancel() | 取消命令执行 |
CreateParameter() | 建立 |
ExecuteNonQuery | 执行命令,返回受影响的行数 |
ExecuteReader() | 执行命令,返回 DataReader 对象 |
ExecuteScalar() | 执行命令,返回第一行第一列数据 |
ExecuteXmlReader() | 执行命令,返回 XmlReader 对象 |
Prepare() | 准备(除非 CommandType=TableDirect) |
ResetCommandTimeout() | 设为默认的超时设置 |
可以包含参数,并使用参数对象赋值。
int id = Convert.ToInt16(Page.Request.Params["id"]);
command.CommandText = "execute getdata @id"; SqlParameter parameter = command.CreateParameter(); parameter.ParameterName = "@id"; parameter.DbType = DbType.Int16; parameter.Value = id; command.Parameters.Add(parameter); |
参数 | 描述 |
---|---|
@id | 命令中的参数名 |
System.Data.SqlClient.SqlCommand command;
SqlDataReader datareader; // 建立对象 command = connection.CreateCommand(); // 设置查询语句 command.CommandText = "select name from ast_users"; // 执行语句,结果存入 DataReader 对象 datareader = command.ExecuteReader(); |