Bagikan melalui


SqlConnection.Open Metode

Definisi

Overload

Open()

Membuka koneksi database dengan pengaturan properti yang ditentukan oleh ConnectionString.

Open(SqlConnectionOverrides)

Membuka koneksi database dengan pengaturan properti yang ditentukan oleh ConnectionString.

Open()

Membuka koneksi database dengan pengaturan properti yang ditentukan oleh ConnectionString.

public:
 override void Open();
public override void Open ();
override this.Open : unit -> unit
Public Overrides Sub Open ()

Pengecualian

Tidak dapat membuka koneksi tanpa menentukan sumber data atau server.

atau

Koneksi sudah terbuka.

Terjadi kesalahan tingkat koneksi saat membuka koneksi. Number Jika properti berisi nilai 18487 atau 18488, ini menunjukkan bahwa kata sandi yang ditentukan telah kedaluwarsa atau harus diatur ulang. ChangePassword(String, String) Lihat metode untuk informasi selengkapnya.

Tag <system.data.localdb> dalam file app.config memiliki elemen yang tidak valid atau tidak diketahui.

Ada dua entri dengan nama yang sama di bagian tersebut <localdbinstances> .

Contoh

Contoh berikut membuat SqlConnection, membukanya, dan menampilkan beberapa propertinya. Koneksi secara otomatis ditutup di akhir using blok.

using Microsoft.Data.SqlClient;

class Program1
{
    static void Main()
    {
        string s = GetConnectionString();

        OpenSqlConnection(s);
        Console.ReadLine();
    }

    private static void OpenSqlConnection(string connectionString)
    {
        using (SqlConnection connection = new SqlConnection(connectionString))
        {
            connection.Open();
            Console.WriteLine("ServerVersion: {0}", connection.ServerVersion);
            Console.WriteLine("State: {0}", connection.State);
        }
    }

    static private string GetConnectionString()
    {
        // To avoid storing the connection string in your code, 
        // you can retrieve it from a configuration file, using the 
        // System.Configuration.ConfigurationSettings.AppSettings property 
        return "Data Source=(local);Initial Catalog=AdventureWorks;"
            + "Integrated Security=SSPI;";
    }
}

Keterangan

menggambar SqlConnection koneksi terbuka dari kumpulan koneksi jika tersedia. Jika tidak, ia membuat koneksi baru ke instans SQL Server.

Catatan

SqlConnection Jika keluar dari cakupan, itu tidak ditutup. Oleh karena itu, Anda harus secara eksplisit menutup koneksi dengan memanggil Close.

Catatan

Jika Anda menentukan nomor port selain 1433 saat Anda mencoba menyambungkan ke instans SQL Server dan menggunakan protokol selain TCP/IP, metode gagalOpen. Untuk menentukan nomor port selain 1433, sertakan "server=machinename,nomor port" dalam string koneksi, dan gunakan protokol TCP/IP.

Catatan

Penyedia Data .NET Framework untuk SQL Server memerlukan izin Keamanan dengan "Memungkinkan panggilan ke rakitan tidak terkelola" diaktifkan (SecurityPermission dengan diatur ke UnmanagedCode) untuk membuka SqlConnection dengan SQL SecurityPermissionFlag Debugging diaktifkan.

Berlaku untuk

Open(SqlConnectionOverrides)

Membuka koneksi database dengan pengaturan properti yang ditentukan oleh ConnectionString.

public:
 void Open(Microsoft::Data::SqlClient::SqlConnectionOverrides overrides);
public void Open (Microsoft.Data.SqlClient.SqlConnectionOverrides overrides);
override this.Open : Microsoft.Data.SqlClient.SqlConnectionOverrides -> unit
Public Sub Open (overrides As SqlConnectionOverrides)

Parameter

overrides
SqlConnectionOverrides

Opsi untuk mengambil alih perilaku buka koneksi default.

Pengecualian

Tidak dapat membuka koneksi tanpa menentukan sumber data atau server.

atau

Koneksi sudah terbuka.

Terjadi kesalahan tingkat koneksi saat membuka koneksi. Number Jika properti berisi nilai 18487 atau 18488, ini menunjukkan bahwa kata sandi yang ditentukan telah kedaluwarsa atau harus diatur ulang. ChangePassword(String, String) Lihat metode untuk informasi selengkapnya.

Tag <system.data.localdb> dalam file app.config memiliki elemen yang tidak valid atau tidak diketahui.

Ada dua entri dengan nama yang sama di bagian tersebut <localdbinstances> .

Contoh

Contoh berikut membuat SqlConnection, membukanya, dan menampilkan beberapa propertinya. Koneksi secara otomatis ditutup di akhir using blok.

using Microsoft.Data.SqlClient;

class Program1
{
    static void Main()
    {
        string s = GetConnectionString();

        OpenSqlConnection(s);
        Console.ReadLine();
    }

    private static void OpenSqlConnection(string connectionString)
    {
        using (SqlConnection connection = new SqlConnection(connectionString))
        {
            connection.Open();
            Console.WriteLine("ServerVersion: {0}", connection.ServerVersion);
            Console.WriteLine("State: {0}", connection.State);
        }
    }

    static private string GetConnectionString()
    {
        // To avoid storing the connection string in your code, 
        // you can retrieve it from a configuration file, using the 
        // System.Configuration.ConfigurationSettings.AppSettings property 
        return "Data Source=(local);Initial Catalog=AdventureWorks;"
            + "Integrated Security=SSPI;";
    }
}

Keterangan

menggambar SqlConnection koneksi terbuka dari kumpulan koneksi jika tersedia. Jika tidak, ia membuat koneksi baru ke instans SQL Server. Jika penimpaan ditentukan, upaya terbuka pertama akan menerapkan penimpaan yang ditentukan ke tindakan terbuka.

Catatan

SqlConnection Jika keluar dari cakupan, itu tidak ditutup. Oleh karena itu, Anda harus secara eksplisit menutup koneksi dengan memanggil Close.

Catatan

Jika Anda menentukan nomor port selain 1433 saat Anda mencoba menyambungkan ke instans SQL Server dan menggunakan protokol selain TCP/IP, metode gagalOpen. Untuk menentukan nomor port selain 1433, sertakan "server=machinename,nomor port" dalam string koneksi, dan gunakan protokol TCP/IP.

Catatan

Penyedia Data .NET Framework untuk SQL Server memerlukan izin Keamanan dengan "Memungkinkan panggilan ke rakitan tidak terkelola" diaktifkan (SecurityPermission dengan diatur ke UnmanagedCode) untuk membuka SqlConnection dengan SQL SecurityPermissionFlag Debugging diaktifkan.

Berlaku untuk