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();
}
}
}
}
執行上面示例代碼,得到以下結果 -
| | | | | |
| |
| | `` | |