本文概述
此类用于存储和执行SQL Server数据库的SQL语句。这是一个密封的类,因此无法继承。
SqlCommand签名
public sealed class SqlCommand : System.Data.Common.DbCommand, ICloneable, IDisposable
建设者
此类提供以下构造函数。
建设者 | 描述 |
---|---|
SqlCommand() | 它用于初始化SqlCommand类的新实例。 |
SqlCommand(String) | 它用于使用字符串参数初始化SqlCommand类的新实例。 |
SqlCommand(String, SqlConnection) | 它用于初始化SqlCommand类的新实例。它有两个参数, 第一个是查询字符串, 第二个是连接字符串。 |
SqlCommand(String, SqlConnection, SqlTransaction) | 它用于初始化SqlCommand类的新实例。它分别使用三个参数查询, 连接和事务字符串。 |
SqlCommand(String, SqlConnection, SqlTransaction, SqlCommandColumnEncryptionSetting) | 它使用指定的命令文本, 连接, 事务和加密设置初始化SqlCommand类的新实例。 |
方法
方法 | 描述 |
---|---|
BeginExecuteNonQuery() | 它用于启动此SqlCommand描述的SQL语句的异步执行。 |
Cancel() | 它试图取消执行SqlCommand。 |
Clone() | 它创建一个新的SqlCommand对象, 该对象是当前实例的副本。 |
CreateParameter() | 它创建一个SqlParameter对象的新实例。 |
ExecuteReader() | 它用于将CommandText发送到Connection并构建SqlDataReader。 |
ExecuteXmlReader() | 它用于将CommandText发送到Connection并构建XmlReader对象。 |
ExecuteScalar() | 它执行查询并返回结果集中第一行的第一列。其他列或行将被忽略。 |
Prepare() | 它用于通过使用SQL Server实例来创建命令的预备版本。 |
ResetCommandTimeout() | 它用于将CommandTimeout属性重置为其默认值。 |
例
在此示例中,我们将创建一个SqlCommand实例并执行一个SQL语句。
// Program.cs
using System;
using System.Data.SqlClient;
namespace AdoNetConsoleApplication
{
class Program
{
static void Main(string[] args)
{
new Program().CreateTable();
}
public void CreateTable()
{
SqlConnection con = null;
try
{
// Creating Connection
con = new SqlConnection("data source=.; database=student; integrated security=SSPI");
// writing sql query
SqlCommand cm = new SqlCommand("select * from student", con);
// Opening Connection
con.Open();
// Executing the SQL query
SqlDataReader sdr = cm.ExecuteReader();
while (sdr.Read())
{
Console.WriteLine(sdr["name"]+" "+ sdr["email"]);
}
}
catch (Exception e)
{
Console.WriteLine("OOPs, something went wrong." + e);
}
// Closing the connection
finally
{
con.Close();
}
}
}
}
输出:
通过组合Ctrl F5执行此程序,它将产生以下输出。
打印学生的姓名和电子邮件。
评论前必须登录!
注册