SqlConnection.ConnectionString プロパティ

定義

SQL Server データベースを開くために使用する文字列を取得または設定します。Gets or sets the string used to open a SQL Server database.

public:
 property System::String ^ ConnectionString { System::String ^ get(); void set(System::String ^ value); };
[System.Data.DataSysDescription("SqlConnection_ConnectionString")]
[System.ComponentModel.SettingsBindable(true)]
public string ConnectionString { get; set; }
member this.ConnectionString : string with get, set
Public Property ConnectionString As String

プロパティ値

ソース データベース名を含む接続文字列、および初期接続を確立するために必要なその他のパラメーター。The connection string that includes the source database name, and other parameters needed to establish the initial connection. 既定値は空の文字列です。The default value is an empty string.

実装

属性

例外

無効な接続文字列引数が指定されたか、必要な接続文字列引数が指定されていません。An invalid connection string argument has been supplied, or a required connection string argument has not been supplied.

次の例では、SqlConnection を作成し、接続を開く前に ConnectionString プロパティを設定します。The following example creates a SqlConnection and sets the ConnectionString property before opening the connection.

private static void OpenSqlConnection()
{
    string connectionString = GetConnectionString();

    using (SqlConnection connection = new SqlConnection())
    {
        connection.ConnectionString = connectionString;

        connection.Open();

        Console.WriteLine("State: {0}", connection.State);
        Console.WriteLine("ConnectionString: {0}",
            connection.ConnectionString);
    }
}

static private string GetConnectionString()
{
    // To avoid storing the connection string in your code, 
    // you can retrieve it from a configuration file.
    return "Data Source=MSSQL1;Initial Catalog=AdventureWorks;"
        + "Integrated Security=true;";
}
Private Sub OpenSqlConnection()
    Dim connectionString As String = GetConnectionString()

    Using connection As New SqlConnection()

        connection.ConnectionString = connectionString

        connection.Open()

        Console.WriteLine("State: {0}", connection.State)
        Console.WriteLine("ConnectionString: {0}", _
            connection.ConnectionString)
    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.
    Return "Data Source=MSSQL1;Database=AdventureWorks;" _
      & "Integrated Security=true;"
End Function

注釈

ConnectionString は OLE DB 接続文字列に似ていますが、同一ではありません。The ConnectionString is similar to an OLE DB connection string, but is not identical. OLE DB または ADO とは異なり、返される接続文字列はユーザー設定 ConnectionStringと同じです。 [セキュリティ情報を保持する] の値が false (既定値) に設定されている場合は、セキュリティ情報を除きます。Unlike OLE DB or ADO, the connection string that is returned is the same as the user-set ConnectionString, minus security information if the Persist Security Info value is set to false (default). SQL Server の .NET Framework Data Provider は、[セキュリティ情報を保持する] を trueに設定しない限り、接続文字列のパスワードを保持したり返したりすることはありません。The .NET Framework Data Provider for SQL Server does not persist or return the password in a connection string unless you set Persist Security Info to true.

ConnectionString プロパティを使用して、データベースに接続できます。You can use the ConnectionString property to connect to a database. 一般的な接続文字列の例を次に示します。The following example illustrates a typical connection string.

"Persist Security Info=False;Integrated Security=true;Initial Catalog=Northwind;server=(local)"  

実行時に有効な接続文字列を作成するには、新しい SqlConnectionStringBuilder を使用します。Use the new SqlConnectionStringBuilder to construct valid connection strings at run time. 詳細については、「接続文字列ビルダー」をご覧ください。For more information, see Connection String Builders.

ConnectionString プロパティは、接続が閉じられている場合にのみ設定できます。The ConnectionString property can be set only when the connection is closed. 接続文字列の値の多くに、対応する読み取り専用プロパティがあります。Many of the connection string values have corresponding read-only properties. 接続文字列が設定されている場合は、エラーが検出された場合を除き、これらのプロパティが更新されます。When the connection string is set, these properties are updated, except when an error is detected. この場合、プロパティは更新されません。In this case, none of the properties are updated. SqlConnection プロパティは、ConnectionStringに含まれる設定のみを返します。SqlConnection properties return only those settings that are contained in the ConnectionString.

ローカルコンピューターに接続するには、サーバーの "(local)" を指定します。To connect to a local computer, specify "(local)" for the server. サーバー名が指定されていない場合、ローカルコンピューター上の既定のインスタンスへの接続が試行されます。If a server name is not specified, a connection will be attempted to the default instance on the local computer.

閉じた接続で ConnectionString をリセットすると、パスワードを含むすべての接続文字列値 (および関連するプロパティ) がリセットされます。Resetting the ConnectionString on a closed connection resets all connection string values (and related properties) including the password. たとえば、"Database = AdventureWorks" を含む接続文字列を設定し、接続文字列を "Data Source = myserver; Integrated Security = true" にリセットした場合、Database プロパティは "AdventureWorks" に設定されなくなります。For example, if you set a connection string that includes "Database= AdventureWorks", and then reset the connection string to "Data Source=myserver;Integrated Security=true", the Database property is no longer set to "AdventureWorks".

接続文字列は、設定された直後に解析されます。The connection string is parsed immediately after being set. 解析時に構文のエラーが見つかった場合は、ArgumentExceptionなどのランタイム例外が生成されます。If errors in syntax are found when parsing, a runtime exception, such as ArgumentException, is generated. その他のエラーが発生するのは、接続を開こうとしたときだけです。Other errors can be found only when an attempt is made to open the connection.

接続文字列の基本形式には、セミコロンで区切られた一連のキーワードと値のペアが含まれています。The basic format of a connection string includes a series of keyword/value pairs separated by semicolons. それぞれのキーワードと値の関連付けには、等号 (=) が使用されます。The equal sign (=) connects each keyword and its value. セミコロン、単一引用符、または二重引用符文字を含む値を含めるには、値を二重引用符で囲む必要があります。To include values that contain a semicolon, single-quote character, or double-quote character, the value must be enclosed in double quotation marks. 値にセミコロンと二重引用符の両方が含まれている場合は、値を単一引用符で囲むことができます。If the value contains both a semicolon and a double-quote character, the value can be enclosed in single quotation marks. 単一引用符は、値が二重引用符で始まる場合にも役立ちます。The single quotation mark is also useful if the value starts with a double-quote character. 逆に、値が単一引用符で始まる場合は、二重引用符を使用できます。Conversely, the double quotation mark can be used if the value starts with a single quotation mark. 値に単一引用符と二重引用符の両方の文字が含まれている場合、値を囲むために使用される引用符文字は、値内に出現するたびに2倍にする必要があります。If the value contains both single-quote and double-quote characters, the quotation mark character used to enclose the value must be doubled every time it occurs within the value.

文字列値に先行または末尾のスペースを含めるには、値を単一引用符または二重引用符で囲む必要があります。To include preceding or trailing spaces in the string value, the value must be enclosed in either single quotation marks or double quotation marks. 整数、ブール値、または列挙値の前後の先頭または末尾のスペースは、引用符で囲まれていても無視されます。Any leading or trailing spaces around integer, Boolean, or enumerated values are ignored, even if enclosed in quotation marks. ただし、文字列リテラルキーワードまたは値内のスペースは保持されます。However, spaces within a string literal keyword or value are preserved. 一重引用符または二重引用符は、区切り記号を使用せずに接続文字列内で使用することができます (たとえば、データソース = My' Server または Data Source = my "Server)。引用符文字が値の最初または最後の文字である場合を除きます。Single or double quotation marks may be used within a connection string without using delimiters (for example, Data Source= my'Server or Data Source= my"Server), unless a quotation mark character is the first or last character in the value.

キーワードでは、大文字と小文字は区別されません。Keywords are not case sensitive.

次の表に、ConnectionString内のキーワード値に有効な名前を示します。The following table lists the valid names for keyword values within the ConnectionString.

キーワードKeyword 既定値Default 説明Description
引きAddr N/AN/A データソースのシノニム。Synonym of Data Source.
アドレスAddress N/AN/A データソースのシノニム。Synonym of Data Source.
アプリApp N/AN/A アプリケーション名のシノニム。Synonym of Application Name.
Application NameApplication Name N/AN/A アプリケーションの名前。アプリケーション名が指定されていない場合は、' .NET SQLClient Data Provider ' です。The name of the application, or '.NET SQLClient Data Provider' if no application name is provided.

アプリケーション名は128文字以下にする必要があります。An application name can be 128 characters or less.
ApplicationIntent ReadWrite サーバーに接続するときに、アプリケーションのワークロードの種類を宣言します。Declares the application workload type when connecting to a server. 有効な値は、ReadOnlyReadWrite です。Possible values are ReadOnly and ReadWrite. 次に例を示します。For example:

ApplicationIntent=ReadOnly

Always On 可用性グループの SqlClient サポートの詳細については、「高可用性障害復旧のための SqlClient サポート」をご覧ください。For more information about SqlClient support for Always On Availability Groups, see SqlClient Support for High Availability, Disaster Recovery.
Asynchronous ProcessingAsynchronous Processing

- または --or-

AsyncAsync
false'false' trueすると、非同期操作のサポートを有効にします。When true, enables asynchronous operation support. 認識される値は truefalseyes および no です。Recognized values are true, false, yes, and no.

このプロパティは .NET Framework 4.5.NET Framework 4.5 の開始時に無視されます。This property is ignored beginning in .NET Framework 4.5.NET Framework 4.5. 非同期プログラミングの SqlClient サポートの詳細については、「非同期プログラミング」を参照してください。For more information about SqlClient support for asynchronous programming, see Asynchronous Programming.
AttachDBFilenameAttachDBFilename

- または --or-

拡張プロパティExtended Properties

- または --or-

初期ファイル名Initial File Name
N/AN/A アタッチ可能なデータベースの完全パス名を含む、プライマリデータベースファイルの名前。The name of the primary database file, including the full path name of an attachable database. AttachDBFilename は、.mdf 拡張子を持つプライマリ データ ファイルに対してのみサポートされます。AttachDBFilename is only supported for primary data files with an .mdf extension.

接続文字列に AttachDBFileName キーの値が指定されている場合は、データベースがアタッチされ、接続の既定のデータベースになります。If the value of the AttachDBFileName key is specified in the connection string, the database is attached and becomes the default database for the connection.

このキーが指定されていない場合、データベースが既にアタッチされていると、データベースは再アタッチされません。If this key is not specified and if the database was previously attached, the database will not be reattached. 以前にアタッチされたデータベースは、接続の既定のデータベースとして使用されます。The previously attached database will be used as the default database for the connection.

このキーが AttachDBFileName キーと共に指定されている場合、このキーの値はエイリアスとして使用されます。If this key is specified together with the AttachDBFileName key, the value of this key will be used as the alias. ただし、アタッチされた別のデータベースで既に名前が使用されている場合、接続は失敗します。However, if the name is already used in another attached database, the connection will fail.

パスは、DataDirectory 代替文字列を使用して絶対パスまたは相対パスにすることができます。The path may be absolute or relative by using the DataDirectory substitution string. DataDirectory を使用する場合、データベースファイルは、置換文字列が指すディレクトリのサブディレクトリ内に存在する必要があります。If DataDirectory is used, the database file must exist within a subdirectory of the directory pointed to by the substitution string. 注: リモートサーバー、HTTP、および UNC のパス名はサポートされていません。Note: Remote server, HTTP, and UNC path names are not supported.

次のように、データベース名にはキーワード ' database ' (またはそのエイリアスの1つ) を指定する必要があります。The database name must be specified with the keyword 'database' (or one of its aliases) as in the following:

"AttachDbFileName=|DataDirectory|\data\YourDB.mdf;integrated security=true;database=YourDatabase"

データ ファイルと同じディレクトリにログ ファイルが存在する場合、プライマリ データ ファイルのアタッチ時に 'database' キーワードが使用されると、エラーが生成されます。An error will be generated if a log file exists in the same directory as the data file and the 'database' keyword is used when attaching the primary data file. この場合は、ログ ファイルを削除してください。In this case, remove the log file. データベースがアタッチされると、物理パスに基づいて、新しいログ ファイルが自動的に生成されます。Once the database is attached, a new log file will be automatically generated based on the physical path.
認証Authentication N/AN/A Azure Active Directory 認証を使用して SQL Database に接続するために使用される認証方法。The authentication method used for Connecting to SQL Database By Using Azure Active Directory Authentication.

次の値を指定できます。Valid values are:

Active Directory 統合、Active Directory パスワード、Sql パスワード。Active Directory Integrated, Active Directory Password, Sql Password.
列の暗号化設定Column Encryption Setting N/AN/A 接続のAlways Encrypted機能を有効または無効にします。Enables or disables Always Encrypted functionality for the connection.
接続のタイムアウトConnect Timeout

- または --or-

Connection TimeoutConnection Timeout

- または --or-

TimeoutTimeout
1515 サーバーへの接続を待機する時間 (秒単位)。試行を終了してエラーを生成します。The length of time (in seconds) to wait for a connection to the server before terminating the attempt and generating an error.

有効な値は、0以上かつ2147483647以下です。Valid values are greater than or equal to 0 and less than or equal to 2147483647.

Azure SQL Database への接続を開くときに、接続タイムアウトを30秒に設定します。When opening a connection to a Azure SQL Database, set the connection timeout to 30 seconds.
接続の有効期間Connection Lifetime

- または --or-

Load Balance TimeoutLoad Balance Timeout
00 接続がプールに返された時点で、その接続の作成時刻と現在の時刻を比較し、その時間の長さ (秒) が Connection Lifetime で指定した値を超えている場合は、その接続が破棄されます。When a connection is returned to the pool, its creation time is compared with the current time, and the connection is destroyed if that time span (in seconds) exceeds the value specified by Connection Lifetime. これは、クラスター構成を採用している状況で、実行中のサーバーと、オンラインになったばかりのサーバーの間での、負荷を強制的に分散するのに便利です。This is useful in clustered configurations to force load balancing between a running server and a server just brought online.

値をゼロ (0) に設定すると、プールされた接続の最大接続タイムアウトが発生します。A value of zero (0) causes pooled connections to have the maximum connection timeout.
ConnectRetryCountConnectRetryCount 11 クライアントがアイドル状態の接続エラーを識別した後の再接続試行回数を制御します。Controls the number of reconnection attempts after the client identifies an idle connection failure. 有効な値は 0 ~ 255 です。Valid values are 0 to 255. 既定値は 1 です。The default is 1. 0は、再接続を試行しない (接続の回復性を無効にする) ことを意味します。0 means do not attempt to reconnect (disable connection resiliency).

アイドル状態の接続の回復性の詳細については、「技術記事-アイドル状態の接続の回復性」を参照してください。For additional information about idle connection resiliency, see Technical Article - Idle Connection Resiliency.
ConnectRetryIntervalConnectRetryInterval 1010 各接続再試行の間隔 (ConnectRetryCount) を指定します。Specifies the time between each connection retry attempt (ConnectRetryCount). 有効な値は 1 ~ 60 秒 (既定 = 10) で、最初の再接続の試行後に適用されます。Valid values are 1 to 60 seconds (default=10), applied after the first reconnection attempt. 接続が切断されると、クライアントは直ちに再接続を試みます。これは最初の再接続試行で、ConnectRetryCount が0より大きい場合にのみ発生します。When a broken connection is detected, the client immediately attempts to reconnect; this is the first reconnection attempt and only occurs if ConnectRetryCount is greater than 0. 最初の再接続の試行が失敗し、ConnectRetryCount が1より大きい場合、クライアントは ConnectRetryInterval を待機して、2回目以降の再接続を試行します。If the first reconnection attempt fails and ConnectRetryCount is greater than 1, the client waits ConnectRetryInterval to try the second and subsequent reconnection attempts.

アイドル状態の接続の回復性の詳細については、「技術記事-アイドル状態の接続の回復性」を参照してください。For additional information about idle connection resiliency, see Technical Article - Idle Connection Resiliency.
Context ConnectionContext Connection false'false' SQL Server へのインプロセス接続を行う必要があるかどうかを true します。true if an in-process connection to SQL Server should be made.
Current LanguageCurrent Language

- または --or-

言語Language
N/AN/A データベースサーバーの警告メッセージまたはエラーメッセージに使用する言語を設定します。Sets the language used for database server warning or error messages.

言語名は128文字以下にする必要があります。The language name can be 128 characters or less.
データ ソースData Source

- または --or-

サーバーServer

- または --or-

アドレスAddress

- または --or-

引きAddr

- または --or-

ネットワーク アドレスNetwork Address
N/AN/A 接続先の SQL Server インスタンスの名前またはネットワークアドレス。The name or network address of the instance of SQL Server to which to connect. ポート番号は、サーバー名の後に指定できます。The port number can be specified after the server name:

server=tcp:servername, portnumber

ローカルインスタンスを指定する場合は、常に (local) を使用します。When specifying a local instance, always use (local). プロトコルを強制するには、次のいずれかのプレフィックスを追加します。To force a protocol, add one of the following prefixes:

np:(local), tcp:(local), lpc:(local)

.NET Framework 4.5.NET Framework 4.5以降では、次のように LocalDB データベースに接続することもできます。Beginning in .NET Framework 4.5.NET Framework 4.5, you can also connect to a LocalDB database as follows:

server=(localdb)\\myInstance

LocalDB の詳細については、「 localdb の SqlClient サポート」を参照してください。For more information about LocalDB, see SqlClient Support for LocalDB.

データソースでは、TCP 形式または名前付きパイプ形式を使用する必要があります。Data Source must use the TCP format or the Named Pipes format.

TCP 形式は次のとおりです。TCP format is as follows:

-tcp:<ホスト名 >\< インスタンス名>- tcp:<host name>\<instance name>
-tcp:<ホスト名 >、<TCP/IP ポート番号 >- tcp:<host name>,<TCP/IP port number>

TCP 形式は、"tcp:" というプレフィックスで始まり、ホスト名とインスタンス名によって指定されたデータベースインスタンスが続く必要があります。The TCP format must start with the prefix "tcp:" and is followed by the database instance, as specified by a host name and an instance name. この形式は、Azure SQL Database に接続する場合には適用されません。This format is not applicable when connecting to Azure SQL Database. プロトコルが指定されていない場合、Azure SQL Database への接続に対して TCP が自動的に選択されます。TCP is automatically selected for connections to Azure SQL Database when no protocol is specified.

ホスト名は、次のいずれかの方法で指定する必要があります。The host name MUST be specified in one of the following ways:

-NetBIOSName- NetBIOSName
-IPv4Address- IPv4Address
-IPv6Address- IPv6Address

インスタンス名は、データベースインスタンスがホストされている特定の TCP/IP ポート番号に解決するために使用されます。The instance name is used to resolve to a particular TCP/IP port number on which a database instance is hosted. または、TCP/IP ポート番号を直接指定することもできます。Alternatively, specifying a TCP/IP port number directly is also allowed. インスタンス名とポート番号の両方が存在しない場合は、既定のデータベースインスタンスが使用されます。If both instance name and port number are not present, the default database instance is used.

名前付きパイプの形式は次のとおりです。The Named Pipes format is as follows:

-np:\\< ホスト名>\ パイプ\< パイプ名>- np:\\<host name>\pipe\<pipe name>

名前付きパイプの形式はプレフィックス "np:" で始まり、その後に名前付きパイプ名が続きます。The Named Pipes format MUST start with the prefix "np:" and is followed by a named pipe name.

ホスト名は、次のいずれかの方法で指定する必要があります。The host name MUST be specified in one of the following ways:

-NetBIOSName- NetBIOSName
-IPv4Address- IPv4Address
-IPv6Address- IPv6Address

パイプ名は、.NET Framework アプリケーションが接続されるデータベースインスタンスを識別するために使用されます。The pipe name is used to identify the database instance to which the .NET Framework application will be connected.

ネットワークキーの値を指定する場合は、プレフィックス "tcp:" と "np:" を指定しないでください。If the value of the Network key is specified, the prefixes "tcp:" and "np:" should not be specified. 注: 共有メモリではなく TCP を強制的に使用することができます。そのためには、接続文字列でサーバー名にプレフィックスを付けるか、 localhostを使用します。Note: You can force the use of TCP instead of shared memory, either by prefixing tcp: to the server name in the connection string, or by using localhost.
EncryptEncrypt false'false' trueすると、サーバーに証明書がインストールされている場合、SQL Server はクライアントとサーバーの間で送信されるすべてのデータに SSL 暗号化を使用します。When true, SQL Server uses SSL encryption for all data sent between the client and server if the server has a certificate installed. 認識される値は truefalseyes および no です。Recognized values are true, false, yes, and no. 詳細については、「接続文字列の構文」を参照してください。For more information, see Connection String Syntax.

.NET Framework 4.5.NET Framework 4.5以降では、TrustServerCertificate が false で Encrypt が true の場合、SQL Server の SSL 証明書のサーバー名 (または IP アドレス) は、接続文字列で指定されているサーバー名 (または IP アドレス) と正確に一致する必要があります。Beginning in .NET Framework 4.5.NET Framework 4.5, when TrustServerCertificate is false and Encrypt is true, the server name (or IP address) in a SQL Server SSL certificate must exactly match the server name (or IP address) specified in the connection string. それ以外の場合、接続試行は失敗します。Otherwise, the connection attempt will fail. サブジェクトがワイルドカード文字 (*) で始まる証明書のサポートの詳細については、「サーバー認証にサーバー証明書で使用されるワイルドカードを使用する」を参照してください。For information about support for certificates whose subject starts with a wildcard character (*), see Accepted wildcards used by server certificates for server authentication.
EnlistEnlist 'true''true' true は、SQL Server 接続プーラーが、作成スレッドの現在のトランザクションコンテキストに接続を自動的に参加させることを示します。true indicates that the SQL Server connection pooler automatically enlists the connection in the creation thread's current transaction context.
Failover PartnerFailover Partner N/AN/A データベースミラーリングが構成されているフェールオーバーパートナーサーバーの名前。The name of the failover partner server where database mirroring is configured.

このキーの値が "" の場合は、初期カタログが存在し、その値を "" にすることはできません。If the value of this key is "", then Initial Catalog must be present, and its value must not be "".

サーバー名は128文字以下にする必要があります。The server name can be 128 characters or less.

フェールオーバーパートナーを指定しても、フェールオーバーパートナーサーバーがデータベースミラーリング用に構成されておらず、(Server キーワードで指定された) プライマリサーバーが使用できない場合、接続は失敗します。If you specify a failover partner but the failover partner server is not configured for database mirroring and the primary server (specified with the Server keyword) is not available, then the connection will fail.

フェールオーバーパートナーを指定し、プライマリサーバーがデータベースミラーリング用に構成されていない場合、プライマリサーバーが使用可能な場合、プライマリサーバー (Server キーワードで指定) への接続は成功します。If you specify a failover partner and the primary server is not configured for database mirroring, the connection to the primary server (specified with the Server keyword) will succeed if the primary server is available.
Initial CatalogInitial Catalog

- または --or-

データベースDatabase
N/AN/A データベースの名前。The name of the database.

データベース名は128文字以下にする必要があります。The database name can be 128 characters or less.
Integrated SecurityIntegrated Security

- または --or-

Trusted_ConnectionTrusted_Connection
false'false' falseすると、接続にユーザー ID とパスワードが指定されます。When false, User ID and Password are specified in the connection. trueすると、現在の Windows アカウントの資格情報が認証に使用されます。When true, the current Windows account credentials are used for authentication.

認識される値は truefalseyesno、および sspi です (強くお勧めします)。これは trueと同じです。Recognized values are true, false, yes, no, and sspi (strongly recommended), which is equivalent to true.

ユーザー ID とパスワードを指定し、Integrated Security を true に設定した場合、ユーザー ID とパスワードは無視され、統合セキュリティが使用されます。If User ID and Password are specified and Integrated Security is set to true, the User ID and Password will be ignored and Integrated Security will be used.

SqlCredential は、SQL Server 認証 (Integrated Security=false) を使用する接続の資格情報をより安全に指定する方法です。SqlCredential is a more secure way to specify credentials for a connection that uses SQL Server Authentication (Integrated Security=false).
Max Pool SizeMax Pool Size 100100 プールで許可されている接続の最大数。The maximum number of connections that are allowed in the pool.

有効な値は1以上です。Valid values are greater than or equal to 1. 最小プールサイズ未満の値を指定すると、エラーが発生します。Values that are less than Min Pool Size generate an error.
Min Pool SizeMin Pool Size 00 プールで許可されている接続の最小数。The minimum number of connections that are allowed in the pool.

有効な値は0以上です。Valid values are greater than or equal to 0. このフィールドにゼロ (0) を入力すると、最初に最小接続が開かれません。Zero (0) in this field means no minimum connections are initially opened.

最大プールサイズより大きい値を指定すると、エラーが発生します。Values that are greater than Max Pool Size generate an error.
MultipleActiveResultSetsMultipleActiveResultSets false'false' trueすると、アプリケーションは複数のアクティブな結果セット (MARS) を保持できます。When true, an application can maintain multiple active result sets (MARS). falseする場合、アプリケーションは、その接続で他のバッチを実行する前に、1つのバッチからすべての結果セットを処理するか、取り消す必要があります。When false, an application must process or cancel all result sets from one batch before it can execute any other batch on that connection.

認識される値は truefalseです。Recognized values are true and false.

詳細については、「 複数のアクティブな結果セット (MARS)」を参照してください。For more information, see Multiple Active Result Sets (MARS).
MultiSubnetFailover falseFALSE SQL Server 2012 (またはそれ以降) 可用性グループまたは SQL Server 2012 (またはそれ以降) のフェールオーバークラスターインスタンスの可用性グループリスナーに接続するときは、常に multiSubnetFailover=True を指定します。Always specify multiSubnetFailover=True when connecting to the availability group listener of a SQL Server 2012 (or later) availability group or a SQL Server 2012 (or later) Failover Cluster Instance. multiSubnetFailover=True によって、(現在) アクティブなサーバーを迅速に検出して接続できるように SqlClient が構成されます。multiSubnetFailover=True configures SqlClient to provide faster detection of and connection to the (currently) active server. 指定できる値は、YesNoTrueFalse または 10です。Possible values are Yes and No, True and False or 1 and 0. 次に例を示します。For example:

MultiSubnetFailover=True

既定値は、False です。The default is False. Always On Ag の SqlClient のサポートの詳細については、「高可用性、ディザスターリカバリーのための Sqlclient サポート」を参照してください。For more information about SqlClient's support for Always On AGs, see SqlClient Support for High Availability, Disaster Recovery.
Network LibraryNetwork Library

- または --or-

ネットワークNetwork

- または --or-

NetNet
N/AN/A SQL Server のインスタンスへの接続を確立するために使用されるネットワークライブラリ。The network library used to establish a connection to an instance of SQL Server. サポートされている値は次のとおりです。Supported values include:

dbnmpntw (名前付きパイプ)dbnmpntw (Named Pipes)

dbmsrpcn (マルチプロトコル、Windows RPC)dbmsrpcn (Multiprotocol, Windows RPC)

dbmsadsn (Apple Talk)dbmsadsn (Apple Talk)

dbmsgnet (VIA)dbmsgnet (VIA)

dbmslpcn (共有メモリ)dbmslpcn (Shared Memory)

dbmsspxn (IPX/SPX)dbmsspxn (IPX/SPX)

dbmssocn (TCP/IP)dbmssocn (TCP/IP)

Dbmsvinn (Banyan Vines)Dbmsvinn (Banyan Vines)

接続先のシステムに、対応するネットワーク DLL がインストールされている必要があります。The corresponding network DLL must be installed on the system to which you connect. ネットワークを指定せず、ローカルサーバー ("." や "(local)" など) を使用する場合は、共有メモリが使用されます。If you do not specify a network and you use a local server (for example, "." or "(local)"), shared memory is used. 次の例では、ネットワーク ライブラリが Win32 Winsock TCP/IP (dbmssocn) で、使用ポートは 1433 です。In this example, the network library is Win32 Winsock TCP/IP (dbmssocn), and 1433 is the port being used.

Network Library=dbmssocn;Data Source=000.000.000.000,1433;
Packet SizePacket Size 80008000 SQL Server のインスタンスとの通信に使用されるネットワークパケットのサイズ (バイト単位)。Size in bytes of the network packets used to communicate with an instance of SQL Server.

パケットサイズは512以上、32768以下でなければなりません。The packet size can be greater than or equal to 512 and less than or equal to 32768.
パスワードPassword

- または --or-

PWDPWD
N/AN/A SQL Server アカウントのログオンに使用するパスワードです。The password for the SQL Server account logging on. 推奨しません。Not recommended. 高いレベルのセキュリティを維持するには、代わりに Integrated Security または Trusted_Connection キーワードを使用することを強くお勧めします。To maintain a high level of security, we strongly recommend that you use the Integrated Security or Trusted_Connection keyword instead. SqlCredential は、SQL Server 認証を使用する接続の資格情報をより安全に指定する方法です。SqlCredential is a more secure way to specify credentials for a connection that uses SQL Server Authentication.

パスワードは128文字以下でなければなりません。The password must be 128 characters or less.
Persist Security InfoPersist Security Info

- または --or-

PersistSecurityInfoPersistSecurityInfo
false'false' false または no (強く推奨) に設定した場合、接続が開いているか、開いている状態になったことがある場合、パスワードなどのセキュリティが重要な情報は接続の一部として返されません。When set to false or no (strongly recommended), security-sensitive information, such as the password, is not returned as part of the connection if the connection is open or has ever been in an open state. 接続文字列をリセットすると、パスワードを含むすべての接続文字列の値がリセットされます。Resetting the connection string resets all connection string values including the password. 認識される値は truefalseyes および no です。Recognized values are true, false, yes, and no.
System.data.sqlclient.sqlconnectionstringbuilder.poolblockingperiodPoolBlockingPeriod 自動Auto 接続プールのブロック期間の動作を設定します。Sets the blocking period behavior for a connection pool. 詳細については、PoolBlockingPeriod プロパティを参照してください。See PoolBlockingPeriod property for details.
PoolingPooling 'true''true' このキーの値が true に設定されている場合、新しく作成された接続はアプリケーションによって閉じられたときにプールに追加されます。When the value of this key is set to true, any newly created connection will be added to the pool when closed by the application. 次に同じ接続を開こうとすると、その接続がプールから描画されます。In a next attempt to open the same connection, that connection will be drawn from the pool.

接続文字列が同じである場合、接続は同じと見なされます。Connections are considered the same if they have the same connection string. 接続ごとに異なる接続文字列があります。Different connections have different connection strings.

このキーの値には、"true"、"false"、"yes"、または "no" を指定できます。The value of this key can be "true", "false", "yes", or "no".
ReplicationReplication false'false' 接続を使用してレプリケーションがサポートされているかどうかを true します。true if replication is supported using the connection.
Transaction BindingTransaction Binding Implicit UnbindImplicit Unbind 参加している System.Transactions トランザクションとの接続の関連付けを制御します。Controls connection association with an enlisted System.Transactions transaction.

指定できる値は次のとおりです。Possible values are:

Transaction Binding=Implicit Unbind;

Transaction Binding=Explicit Unbind;

暗黙のバインド解除では、終了時に接続がトランザクションからデタッチされます。Implicit Unbind causes the connection to detach from the transaction when it ends. デタッチ後、接続に対する追加の要求は、自動コミット モードで実行されます。After detaching, additional requests on the connection are performed in autocommit mode. トランザクションがアクティブである間に要求が実行されても、System.Transactions.Transaction.Current プロパティの確認は行われません。The System.Transactions.Transaction.Current property is not checked when executing requests while the transaction is active. トランザクションの終了後、追加の要求は、自動コミット モードで実行されます。After the transaction has ended, additional requests are performed in autocommit mode.

最後のコマンドが完了する前に、システムが (using ブロックのスコープ内で) トランザクションを終了すると、InvalidOperationExceptionがスローされます。If the system ends the transaction (in the scope of a using block) before the last command completes, it will throw InvalidOperationException.

明示的なバインド解除を行うと、接続が閉じられるか、明示的な SqlConnection.TransactionEnlist(null) が呼び出されるまで、接続がトランザクションにアタッチされたままになります。Explicit Unbind causes the connection to remain attached to the transaction until the connection is closed or an explicit SqlConnection.TransactionEnlist(null) is called. .NET Framework 4.NET Framework 4以降では、暗黙的なバインド解除を変更することで、明示的なバインド解除が廃止されます。Beginning in .NET Framework 4.NET Framework 4, changes to Implicit Unbind make Explicit Unbind obsolete. InvalidOperationException が登録済みのトランザクションではない場合および登録済みのトランザクションがアクティブではない場合は、Transaction.Current がスローされます。An InvalidOperationException is thrown if Transaction.Current is not the enlisted transaction or if the enlisted transaction is not active.
TransparentNetworkIPResolutionTransparentNetworkIPResolution 説明を参照してください。See description. このキーの値を true に設定すると、特定の DNS エントリのすべての IP アドレスを取得し、リストの最初の IP アドレスで接続を試行するようアプリケーションに要求します。When the value of this key is set to true, the application is required to retrieve all IP addresses for a particular DNS entry and attempt to connect with the first one in the list. 0.5 秒以内に接続が確立されない場合、アプリケーションは他のすべての IP アドレスへの接続を同時に試行します。If the connection is not established within 0.5 seconds, the application will try to connect to all others in parallel. 最初の応答を受信すると、アプリケーションは応答した IP アドレスで接続を確立します。When the first answers, the application will establish the connection with the respondent IP address.

MultiSubnetFailover キーが trueに設定されている場合、TransparentNetworkIPResolution は無視されます。If the MultiSubnetFailover key is set to true, TransparentNetworkIPResolution is ignored.

Failover Partner キーが設定されている場合、TransparentNetworkIPResolution は無視されます。If the Failover Partner key is set, TransparentNetworkIPResolution is ignored.

このキーの値は truefalseyes、または no である必要があります。The value of this key must be true, false, yes, or no.

yes は、true と同じ値として扱われます。A value of yes is treated the same as a value of true.

no は、false と同じ値として扱われます。A value of no is treated the same as a value of false.

既定値は次のとおりです。The default values are as follows:

  • 次の場合に false します。false when:

    • データソースが次で終わる Azure SQL Database に接続しています:Connecting to Azure SQL Database where the data source ends with:

      • .database.chinacloudapi.cn.database.chinacloudapi.cn
      • .database.usgovcloudapi.net.database.usgovcloudapi.net
      • .database.cloudapi.de.database.cloudapi.de
      • .database.windows.net.database.windows.net
    • Authentication は ' Active Directory Password ' または ' Active Directory Integrated ' ですAuthentication is 'Active Directory Password' or 'Active Directory Integrated'
  • true。上記のいずれのケースにも該当しない場合。true in all other cases.
TrustServerCertificateTrustServerCertificate false'false' trueに設定すると、信頼関係を検証するために証明書チェーンのウォークをバイパスするときに、SSL を使用してチャネルが暗号化されます。When set to true, SSL is used to encrypt the channel when bypassing walking the certificate chain to validate trust. TrustServerCertificate が true に設定されていて、Encrypt が falseに設定されている場合、チャネルは暗号化されません。If TrustServerCertificate is set to true and Encrypt is set to false, the channel is not encrypted. 認識される値は truefalseyes および no です。Recognized values are true, false, yes, and no. 詳細については、「接続文字列の構文」を参照してください。For more information, see Connection String Syntax.
型システムのバージョンType System Version N/AN/A アプリケーションが要求する型システムを示す文字列値。A string value that indicates the type system the application expects. クライアント アプリケーションで利用可能な機能は、SQL Server のバージョンとデータベースの互換性レベルに依存します。The functionality available to a client application is dependent on the version of SQL Server and the compatibility level of the database. 使用されている SQL Server のバージョンが、クライアント アプリケーションで想定されているものと異なる場合、アプリケーションが正常に動作しない可能性がありますが、型システムのバージョンを明示的に設定することでその問題を防ぐことができます。Explicitly setting the type system version that the client application was written for avoids potential problems that could cause an application to break if a different version of SQL Server is used. 注: SQL Server でインプロセスで実行される共通言語ランタイム (CLR) コードに対して型システムのバージョンを設定することはできません。Note: The type system version cannot be set for common language runtime (CLR) code executing in-process in SQL Server. 詳細については、「 SQL Server 共通言語ランタイムの統合」を参照してください。For more information, see SQL Server Common Language Runtime Integration.

指定できる値は次のとおりです。Possible values are:

Type System Version=SQL Server 2012;

Type System Version=SQL Server 2008;

Type System Version=SQL Server 2005;

Type System Version=Latest;

Type System Version=SQL Server 2012; は、アプリケーションが11.0.0.0 のバージョンを必要とすることを指定します。Type System Version=SQL Server 2012; specifies that the application will require version 11.0.0.0 of Microsoft.SqlServer.Types.dll. その他の Type System Version 設定には、バージョン10.0.0.0 の Microsoft. SqlServer. .dll が必要です。The other Type System Version settings will require version 10.0.0.0 of Microsoft.SqlServer.Types.dll.

Latest は互換性のために残されています。使用しないでください。Latest is obsolete and should not be used. LatestType System Version=SQL Server 2008; と同じです。Latest is equivalent to Type System Version=SQL Server 2008;.
User IDUser ID

- または --or-

UIDUID

- または --or-
N/AN/A SQL Server ログインアカウントです。The SQL Server login account. 推奨しません。Not recommended. 高いレベルのセキュリティを維持するには、代わりに Integrated Security キーワードまたは Trusted_Connection キーワードを使用することを強くお勧めします。To maintain a high level of security, we strongly recommend that you use the Integrated Security or Trusted_Connection keywords instead. SqlCredential は、SQL Server 認証を使用する接続の資格情報をより安全に指定する方法です。SqlCredential is a more secure way to specify credentials for a connection that uses SQL Server Authentication.

ユーザー ID は128文字以下でなければなりません。The user ID must be 128 characters or less.
User InstanceUser Instance false'false' 既定の SQL Server Express インスタンスから、呼び出し元のアカウントで実行されているランタイムによって開始されるインスタンスに接続をリダイレクトするかどうかを示す値。A value that indicates whether to redirect the connection from the default SQL Server Express instance to a runtime-initiated instance running under the account of the caller.
Workstation IDWorkstation ID

- または --or-

WSIDWSID
ローカルコンピューター名The local computer name SQL Server に接続しているワークステーションの名前。The name of the workstation connecting to SQL Server.

ID は128文字以下でなければなりません。The ID must be 128 characters or less.

次の一覧には、ConnectionString内の接続プール値の有効な名前が含まれています。The following list contains the valid names for connection pooling values within the ConnectionString. 詳しくは、「SQL Server の接続プール (ADO.NET)」をご覧ください。For more information, see SQL Server Connection Pooling (ADO.NET).

  • 接続の有効期間 (または負荷分散のタイムアウト)Connection Lifetime (or Load Balance Timeout)

  • EnlistEnlist

  • Max Pool SizeMax Pool Size

  • Min Pool SizeMin Pool Size

  • PoolingPooling

ブール値を必要とするキーワードまたは接続プーリングの値を設定する場合は、' true ' ではなく ' yes '、' false ' の代わりに ' no ' を使用できます。When you are setting keyword or connection pooling values that require a Boolean value, you can use 'yes' instead of 'true', and 'no' instead of 'false'. 整数値は文字列として表されます。Integer values are represented as strings.

注意

SQL Server の .NET Framework Data Provider は、独自のプロトコルを使用して SQL Server と通信します。The .NET Framework Data Provider for SQL Server uses its own protocol to communicate with SQL Server. そのため、SQL Server に接続するときに odbc データソース名 (DSN) を使用することはできません。 ODBC レイヤーは追加されません。Therefore, it does not support the use of an ODBC data source name (DSN) when connecting to SQL Server because it does not add an ODBC layer.

注意

ユニバーサルデータリンク (UDL) ファイルは、SQL Server の .NET Framework Data Provider ではサポートされていません。Universal data link (UDL) files are not supported for the .NET Framework Data Provider for SQL Server.

注意事項

このリリースでは、ユーザー入力に基づいて接続文字列を作成する場合 (たとえば、ダイアログボックスからユーザー ID とパスワードの情報を取得して接続文字列に追加する場合)、アプリケーションは注意を払ってください。In this release, the application should use caution when constructing a connection string based on user input (for example when retrieving user ID and password information from a dialog box, and appending it to the connection string). アプリケーションでは、ユーザーがこれらの値に追加の接続文字列パラメーターを埋め込むことができないようにする必要があります (たとえば、別のデータベースへのアタッチを試行するときに、パスワードを "validpassword; database =" db "として入力するなど)。The application should make sure that a user cannot embed additional connection string parameters in these values (for example, entering a password as "validpassword;database=somedb" in an attempt to attach to a different database). ユーザー入力に基づいて接続文字列を作成する必要がある場合は、新しい SqlConnectionStringBuilderを使用します。これにより、接続文字列が検証され、この問題を回避することができます。If you need to construct connection strings based on user input, use the new SqlConnectionStringBuilder, which validates the connection string and helps to eliminate this problem. 詳細については、「接続文字列ビルダー 」を参照してください。See Connection String Builders for more information.

適用対象

こちらもご覧ください