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#控制臺應用專案,如下所示 -

參考以下實現代碼(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 SqlConnection類 下一篇: ADO.Net SqlDataReader類