ASP基础知识:Command对象详解
在ASP.NET中,Command对象是用于执行数据库操作的关键对象之一。它可以执行SQL语句和存储过程,并能够返回结果集。Command对象通常与Connection对象和DataAdapter对象一起使用,以完成完整的数据库操作。
Command对象具有以下重要的属性和方法:
CommandType: 指定要执行的命令类型,例如SqlCommand.CommandType.Text表示执行SQL文本,SqlCommand.CommandType.StoredProcedure表示执行存储过程。
CommandText: 指定要执行的SQL语句或存储过程名称。
Connection: 指定用于执行命令的数据库连接对象。
Parameters: 一个集合,用于存储命令的参数。
ExecuteNonQuery: 执行非查询命令,例如INSERT、UPDATE或DELETE语句。
ExecuteReader: 执行查询命令并返回DataReader对象,用于读取结果集。
ExecuteScalar: 执行标量查询并返回单个结果值。
以下示例演示了如何使用Command对象执行SQL语句:
C#
using System.Data.SqlClient;
string connectionString = "Data Source=myServer;Initial Catalog=myDatabase;Integrated Security=True";
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
string sql = "SELECT * FROM Customers";
using (SqlCommand command = new SqlCommand(sql, connection))
{
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
Console.WriteLine("{0} - {1} - {2}", reader["CustomerID"], reader["CompanyName"], reader["ContactName"]);
}
}
}
}
以下示例演示了如何使用Command对象执行存储过程:
C#
using System.Data.SqlClient;
string connectionString = "Data Source=myServer;Initial Catalog=myDatabase;Integrated Security=True";
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
string storedProcedureName = "GetCustomerById";
using (SqlCommand command = new SqlCommand(storedProcedureName, connection))
{
command.CommandType = CommandType.StoredProcedure;
SqlParameter parameter = new SqlParameter("@CustomerID", SqlDbType.Int);
parameter.Value = 101;
command.Parameters.Add(parameter);
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
Console.WriteLine("{0} - {1} - {2}", reader["CustomerID"], reader["CompanyName"], reader["ContactName"]);
}
}
}
}
Command对象还支持更高级的功能,例如:
有关Command对象的更多详细信息,请参考ASP.NET官方文档: [移除了无效网址]
希望以上信息对您有所帮助。如果您还有其他问题,请随时提出。