ADO.Net SqlCommand類

ADO.Net的SqlCommand類用於存儲和執行SQL Server數據庫的SQL語句。這是一個封閉的類,所以不能被繼承。

SqlCommand類的簽名

public sealed class SqlCommand : System.Data.Common.DbCommand, ICloneable, IDisposable

構造函數

這個類提供了下面的構造函數。

編號

構造函數

描述

1

SqlCommand()

它用於初始化SqlCommand類的新實例。

2

SqlCommand(String)

它用於使用字符串參數初始化SqlCommand類的新實例。

3

SqlCommand(String, SqlConnection, SqlTransaction)

它用於初始化SqlCommand類的新實例。它分別使用三個參數查詢,連接和事務字符串。

4

SqlCommand(String, SqlConnection, SqlTransaction, SqlCommandColumnEncryptionSetting)

它使用指定的命令文本,連接,事務和加密設置來初始化SqlCommand類的新實例。

構造方法

這個類提供了下面的方法。

編號

方法

描述

1

BeginExecuteNonQuery()

它用於啓動由此SqlCommand描述的SQL語句的異步執行。

2

Cancel()

它試圖取消一個SqlCommand的執行。

3

Clone()

它創建一個新的SqlCommand對象,它是當前實例的一個副本。

4

CreateParameter()

它創建一個SqlParameter對象的新實例。

5

ExecuteReader()

它用於將CommandText發送給Connection並構建一個SqlDataReader

6

ExecuteXmlReader()

它用於將CommandText發送給Connection並構建一個XmlReader對象。

7

ExecuteScalar()

它執行查詢並返回結果集中第一行的第一列,其他列或行將被忽略。

8

Prepare()

它用於通過使用SQL Server的實例來創建準備好的命令版本。

9

ResetCommandTimeout()

它用於將CommandTimeout屬性重置爲默認值。

SqlCommand類的使用示例

在這個例子中,創建一個SqlCommand實例並執行一條SQL語句。首先創建一個名稱爲:AdoNetSqlCommand 的C#控制檯應用項目,如下所示 -

ADO.Net

參考以下實現代碼(Program.cs) -

using System;
using System.Data.SqlClient;

namespace AdoNetSqlCommand
{
    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_info", con);
                // Opening Connection  
                con.Open();
                Console.WriteLine("當前 student_info 表中的記錄信息如下 - ");
                // Executing the SQL query  
                SqlDataReader sdr = cm.ExecuteReader();
                while (sdr.Read())
                {
                    Console.WriteLine("學生編號:"+ sdr["id"] + ",姓名: "+sdr["name"] + ",電子郵箱: " + sdr["email"]);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("OOPs, something went wrong." + e);
            }
            // Closing the connection  
            finally
            {
                con.Close();
            }
        }
    }
}

執行上面示例代碼,得到以下結果 -

ADO.Net

| | | | | | | |
| | `` | |