SqlConnection クラスとは? わかりやすく解説

SqlConnection クラス

SQL Server データベースへの開いた接続表します。このクラス継承できません。

名前空間: System.Data.SqlClient
アセンブリ: System.Data (system.data.dll 内)
構文構文

Public NotInheritable Class
 SqlConnection
    Inherits DbConnection
    Implements ICloneable
Dim instance As SqlConnection
public sealed class SqlConnection : DbConnection,
 ICloneable
public ref class SqlConnection sealed : public
 DbConnection, ICloneable
public final class SqlConnection extends DbConnection
 implements ICloneable
public final class SqlConnection extends
 DbConnection implements ICloneable
解説解説

SqlConnection オブジェクトは、SQL Server データ ソースへの一意セッション表しますクライアント/サーバー データベース システムでは、サーバーへのネットワーク接続相当しますSqlConnection は、Microsoft SQL Server データベースへの接続パフォーマンス向上させるために、SqlDataAdapter および SqlCommand と組み合わせて使用しますすべてのサードパーティ SQL サーバー製品、および OLE DBサポートするその他のデータ ソースでは、OleDbConnection を使用してください

SqlConnectionインスタンス作成すると、すべてのプロパティ初期値設定されます。これらの初期値一覧については、SqlConnection コンストラクタトピック参照してください

SqlConnection は、適用範囲の外では開いたままになります。そのため、Close または Dispose呼び出して明示的に接続閉じる必要がありますCloseDispose機能は同じです。接続プールPoolingtrue または yes設定されている場合、基になる接続接続プール返されます。一方Poolingfalse または no設定されている場合サーバーへの基になる接続実際に閉じられます。

接続を常に閉じた状態にしておくには、次のコード片に示すように、using ブロック内部接続開きますこうすることによって、ブロックの処理が終了したときに自動的に接続閉じられます。

Using connection As New SqlConnection(connectionString)
    connection.Open()
    ' Do work here; connection closed on following line.
End Using
using (SqlConnection connection = new SqlConnection(connectionString))
    {
        connection.Open();
        // Do work here; connection closed on
 following line.
    }
メモメモ

パフォーマンスの高いアプリケーション配置するには、接続プール使用する必要があります.NET Framework SQL Serverデータ プロバイダ使用するときは、プロバイダ接続プール自動的に管理するため、接続プール有効にする必要はありません。ただし、その場でも、一部設定変更できます詳細については、「接続プール使用」を参照してください

SqlCommand実行するメソッドが SqlException を生成した場合重大度レベル19 以下のときは、SqlConnection開いたままになります重大度レベル20上のときは、通常サーバーSqlConnection閉じます。ただし、ユーザー接続を再び開いて、処理を継続できます

SqlConnection オブジェクトインスタンス作成するアプリケーションは、宣言セキュリティまたは強制セキュリティ要求設定することによって、直接的または間接的な呼び出し元すべてに対してコードへの適切なアクセス許可要求できますSqlConnection は、SqlClientPermission オブジェクト使用してセキュリティ要求作成しますユーザーは、SqlClientPermissionAttribute オブジェクト使用してコード適切なアクセス許可設定されているかどうか確認できますまた、ユーザーおよび管理者は、コード アクセス セキュリティ ポリシー ツール (Caspol.exe) を使用してコンピュータユーザーエンタープライズの各レベルセキュリティ ポリシー変更できます詳細については、「.NET Framework におけるセキュリティ」を参照してくださいセキュリティ確認要求使用方法を示す例については、「コード アクセス セキュリティADO.NET」を参照してください

サーバーから受け取警告メッセージ情報メッセージの処理の詳細については、「接続イベント使用」を参照してください

使用例使用例

SqlCommand および SqlConnection作成する例を次に示しますSqlConnection開かれSqlCommand 用の Connection として設定されます。この例では、次に、ExecuteNonQuery を呼び出し接続閉じます。そのために、接続文字列と、Transact-SQL INSERT ステートメントであるクエリ文字列ExecuteNonQuery渡します

Private Sub OpenSqlConnection()
    Dim connectionString As String
 = GetConnectionString()
    Using connection As New SqlConnection(connectionString)
        connection.Open()
        Console.WriteLine("ServerVersion: {0}", connection.ServerVersion)
        Console.WriteLine("State: {0}", connection.State)
    End Using
End Sub

Private Function GetConnectionString() As
 String
    ' 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);Database=AdventureWorks;"
 _
      & "Integrated Security=SSPI;"
End Function
private static void OpenSqlConnection()
{
    string connectionString = GetConnectionString();
    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;";
}
継承階層継承階層
System.Object
   System.MarshalByRefObject
     System.ComponentModel.Component
       System.Data.Common.DbConnection
        System.Data.SqlClient.SqlConnection
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「SqlConnection クラス」の関連用語

SqlConnection クラスのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



SqlConnection クラスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2024 Microsoft.All rights reserved.

©2024 GRAS Group, Inc.RSS