在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ C#/ ADO.Net SqlConnection類
ADO.Net教程
ADO.Net簡(jiǎn)介
ADO.Net Web表單實(shí)例
ADO.Net SqlConnection類
ADO.Net DataAdapter類
ADO.Net DataTable類
ADO.Net連接SQL Server
ADO.Net數(shù)據(jù)提供程序
ADO.Net SqlCommand類
ADO.Net DataSet類
ADO.Net SqlDataReader類

ADO.Net SqlConnection類

SqlConnection類用于建立到SQL Server數(shù)據(jù)庫(kù)的開(kāi)放連接。這是一個(gè)封閉的類,所以不能被繼承。連接到Microsoft SQL Server數(shù)據(jù)庫(kù)時(shí),SqlConnection類與SqlDataAdapterSqlCommand類一起使用來(lái)提高性能。

即使連接超出范圍,連接也不會(huì)明確關(guān)閉。 因此,在代碼中必須通過(guò)調(diào)用Close()方法顯式關(guān)閉連接。

SqlConnection類簽名

public sealed class SqlConnection : System.Data.Common.DbConnection, ICloneable, IDisposable

SqlConnection類構(gòu)造函數(shù)

編號(hào) 構(gòu)造函數(shù) 描述
1 SqlConnection() 它用于初始化SqlConnection類的新實(shí)例。
2 SqlConnection(String) 它用于初始化SqlConnection類的新實(shí)例,并將連接字符串作為參數(shù)。
3 SqlConnection(String, SqlCredential) 它用于初始化一個(gè)帶有兩個(gè)參數(shù)的SqlConnection類的新實(shí)例。首先是連接字符串,其次是SQL憑據(jù)。

SqlConnection類的方法

編號(hào) 方法 描述
1 BeginTransaction() 它用于啟動(dòng)數(shù)據(jù)庫(kù)事務(wù)。
2 ChangeDatabase(String) 它用于更改當(dāng)前數(shù)據(jù)庫(kù)以打開(kāi)SqlConnection。
3 ChangePassword(String, String) 它會(huì)更改連接字符串中指示的用戶的SQL Server密碼。
4 Close() 它用于關(guān)閉與數(shù)據(jù)庫(kù)的連接。
5 CreateCommand() 它作為分布式事務(wù)在指定的事務(wù)中使用。
6 GetSchema() 它返回這個(gè)SqlConnection的數(shù)據(jù)源的模式信息。
7 Open() 它用來(lái)打開(kāi)數(shù)據(jù)庫(kù)連接。
8 ResetStatistics() 如果啟用統(tǒng)計(jì)信息收集,它會(huì)重置所有值。

SqlConnection示例

現(xiàn)在,下面來(lái)創(chuàng)建一個(gè)與SQL Server建立連接的例子。前面一節(jié)的教程中,已經(jīng)創(chuàng)建了一個(gè)名稱:student 的數(shù)據(jù)庫(kù),這里將演示如何連接到這個(gè)數(shù)據(jù)庫(kù)。參考下面的 C# 代碼。

using (SqlConnection connection = new SqlConnection(connectionString))    
{    
  connection.Open();         
}

代碼中的using塊可以自動(dòng)關(guān)閉連接。所以不需要明確地調(diào)用close()方法來(lái)關(guān)閉數(shù)據(jù)庫(kù)的連接,using塊代碼會(huì)在代碼退出時(shí)隱式執(zhí)行。

為了方便演示,這里創(chuàng)建一個(gè)名稱為:SqlConnectionApp 的 C# 控制臺(tái)項(xiàng)目。如下所示 -

參考以下示例代碼(TestConnection.cs) -

using System;
using System.Data.SqlClient;

namespace SqlConnectionApp
{
    class TestConnection
    {
        static void Main(string[] args)
        {
            new TestConnection().Connecting();
        }
        public void Connecting()
        {
            using (
                     // Creating Connection  
                     SqlConnection con = new SqlConnection("data source=.; database=student; integrated security=SSPI")
                 )
            {
                con.Open();
                Console.WriteLine("建立與SQL Server數(shù)據(jù)庫(kù)的連接成功~!");
            }
        }
    }
}

執(zhí)行上面示例代碼,得到以下結(jié)果 -

下面,演示如何不使用using塊。

如果不使用using塊來(lái)創(chuàng)建連接,必須明確地關(guān)閉連接。在下面的例子中,我們使用try塊而不是使用using塊。參考以下代碼實(shí)現(xiàn)(TestConnection2.cs) -

using System;
using System.Data.SqlClient;

namespace SqlConnectionApp
{

    class TestConnection2
    {
        static void Main(string[] args)
        {
            new TestConnection2().Connecting();
        }
        public void Connecting()
        {
            SqlConnection con = null;
            try
            {
                // Creating Connection  
                con = new SqlConnection("data source=.; database=student; integrated security=SSPI");
                con.Open();
                Console.WriteLine("建立與SQL Server數(shù)據(jù)庫(kù)的連接成功~!");

                // 查詢SQL Server 數(shù)據(jù)庫(kù)的版本
                SqlCommand cm = new SqlCommand("Select @@version as version", con);
                // Executing the SQL query  
                SqlDataReader sdr = cm.ExecuteReader();
                // Iterating Data  
                while (sdr.Read())
                {
                    Console.WriteLine("SQL Server 數(shù)據(jù)庫(kù)的版本是: " + sdr["version"]); // Displaying Record  
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("程序出錯(cuò)了,不知道發(fā)生了什么~!\n" + e);
            }
            finally
            {   // Closing the connection  
                con.Close();
            }
        }
    }
}

執(zhí)行上面示例代碼,得到以下結(jié)果 -


上一篇:ADO.Net教程下一篇:ADO.Net簡(jiǎn)介