SqlConnection.ConnectionString 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
SQL Server 데이터베이스를 여는 데 사용되는 문자열을 가져오거나 설정합니다.
public:
virtual property System::String ^ ConnectionString { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.SettingsBindable(true)]
public override string ConnectionString { get; set; }
public override string ConnectionString { get; set; }
[<System.ComponentModel.SettingsBindable(true)>]
member this.ConnectionString : string with get, set
member this.ConnectionString : string with get, set
Public Overrides Property ConnectionString As String
속성 값
초기 연결을 설정하는 데 필요한 소스 데이터베이스 이름 및 다른 매개 변수를 포함하는 연결 문자열입니다. 기본값은 빈 문자열입니다.
- 특성
예외
잘못된 연결 문자열 인수를 제공했거나 필요한 연결 문자열 인수를 제공하지 않았습니다.
예제
다음 예제에서는 을 SqlConnection 만들고 연결을 열기 전에 속성을 설정합니다 ConnectionString .
using Microsoft.Data.SqlClient;
class Program
{
static void Main()
{
OpenSqlConnection();
Console.ReadLine();
}
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;";
}
}
설명
는 ConnectionString OLE DB 연결 문자열 유사하지만 동일하지는 않습니다. OLE DB 또는 ADO와 달리 반환되는 연결 문자열 사용자 집합ConnectionString과 동일하며 보안 정보 유지 값이 (기본값)으로 false
설정된 경우 보안 정보를 뺀 값입니다. SQL Server .NET Framework 데이터 공급자는 보안 정보 true
유지를 로 설정하지 않는 한 연결 문자열 암호를 유지하거나 반환하지 않습니다.
속성을 사용하여 ConnectionString 데이터베이스에 연결할 수 있습니다. 다음 예제에서는 일반적인 연결 문자열 보여 줍니다.
"Persist Security Info=False;Integrated Security=true;Initial Catalog=Northwind;server=(local)"
새 SqlConnectionStringBuilder 를 사용하여 런타임에 유효한 연결 문자열을 생성합니다. 자세한 내용은 연결 문자열 작성기를 참조하세요.
연결이 ConnectionString 닫힌 경우에만 속성을 설정할 수 있습니다. 대부분의 연결 문자열 값에는 해당 읽기 전용 속성이 있습니다. 연결 문자열 설정되면 오류가 검색되는 경우를 제외하고 이러한 속성이 업데이트됩니다. 이 경우 어떤 속성도 업데이트되지 않습니다. SqlConnection 속성은 에 포함된 ConnectionString설정만 반환합니다.
로컬 컴퓨터에 연결하려면 서버에 대해 "(local)"를 지정합니다. 서버 이름을 지정하지 않으면 로컬 컴퓨터의 기본 instance 대한 연결이 시도됩니다.
닫힌 연결에서 를 ConnectionString 다시 설정하면 암호를 포함한 모든 연결 문자열 값(및 관련 속성)이 다시 설정됩니다. 예를 들어 "Database= AdventureWorks"가 포함된 연결 문자열 설정한 다음 연결 문자열 "Data Source=myserver; Integrated Security=true", Database 속성이 더 이상 "AdventureWorks"로 설정되지 않습니다.
연결 문자열 설정된 직후 구문 분석됩니다. 구문 분석 시 구문 오류가 발견되면 와 같은 ArgumentException런타임 예외가 생성됩니다. 다른 오류는 연결을 열려고 시도한 경우에만 찾을 수 있습니다.
연결 문자열 기본 형식에는 세미콜론으로 구분된 일련의 키워드(keyword)/값 쌍이 포함됩니다. 각 키워드와 해당 값은 등호(=)로 연결됩니다. 세미콜론, 작은따옴표 문자 또는 큰따옴표 문자를 포함하는 값을 포함하려면 값을 큰따옴표로 묶어야 합니다. 값에 세미콜론과 큰따옴표 문자가 모두 포함된 경우 값은 작은따옴표로 묶을 수 있습니다. 작은따옴표는 값이 큰따옴표 문자로 시작하는 경우에도 유용합니다. 반대로 값이 작은따옴표로 시작하는 경우 큰따옴표를 사용할 수 있습니다. 값에 작은따옴표와 큰따옴표 문자가 모두 포함된 경우 값을 묶는 데 사용되는 따옴표 문자는 값 내에서 발생할 때마다 두 배로 증가해야 합니다.
문자열 값에 앞 또는 후행 공백을 포함하려면 값을 작은따옴표 또는 큰따옴표로 묶어야 합니다. 따옴표로 묶어도 정수, 부울 또는 열거형 값 주위의 선행 또는 후행 공백은 무시됩니다. 그러나 문자열 리터럴 키워드(keyword) 또는 값 내의 공백은 유지됩니다. 따옴표 문자가 값의 첫 번째 또는 마지막 문자가 아닌 경우 구분 기호(예: Data Source= my'Server 또는 Data Source= my"Server)를 사용하지 않고 연결 문자열 내에서 작은따옴표나 큰따옴표를 사용할 수 있습니다.
키워드는 대/소문자를 구분하지 않습니다.
다음 표에서는 내의 키워드(keyword) 값에 대한 유효한 이름을 나열합니다ConnectionString.
키워드 | 기본값 | Description |
---|---|---|
Addr | N/A | 동의어 데이터 원본입니다. |
주소 | N/A | 동의어 데이터 원본입니다. |
앱 | N/A | 동의어 애플리케이션 이름입니다. |
애플리케이션 의도 또는 애플리케이션 의도 |
ReadWrite | 서버에 연결할 때 애플리케이션 작업 유형을 선언합니다. 가능한 값은 ReadOnly 및 ReadWrite 입니다. 예를 들면 다음과 같습니다.ApplicationIntent=ReadOnly Always On 가용성 그룹의 SqlClient 지원에 대한 자세한 내용은 고가용성 및 재해 복구에 대한 SqlClient 지원을 참조하십시오. |
애플리케이션 이름 | N/A | 애플리케이션 이름입니다. 애플리케이션 이름이 제공되지 않으면 .NET Framework 실행할 때 'Framework Microsoft SqlClient 데이터 공급자', 그렇지 않으면 'Core Microsoft SqlClient Data Provider'입니다. 애플리케이션 이름은 128 자를 사용할 수 있습니다 또는 작습니다. |
AttachDBFilename 또는 Extended Properties 또는 초기 파일 이름 |
N/A | 연결할 수 있는 데이터베이스의 전체 경로 이름을 포함하여 주 데이터베이스 파일의 이름입니다. AttachDBFilename은 확장명이 .mdf인 주 데이터 파일에 대해서만 지원됩니다. 연결 문자열 AttachDBFileName 키의 값을 지정하면 데이터베이스가 연결되고 연결의 기본 데이터베이스가 됩니다. 이 키를 지정하지 않고 데이터베이스가 이전에 연결되었으면 데이터베이스가 다시 연결되지 않습니다. 이전에 연결된 데이터베이스는 연결의 기본 데이터베이스로 사용됩니다. 이 키를 AttachDBFileName 키와 함께 지정하면 이 키의 값이 별칭으로 사용됩니다. 그러나 다른 연결된 데이터베이스에서 이름이 이미 사용되는 경우 연결이 실패합니다. 경로는 DataDirectory 대체 문자열을 사용하여 절대 또는 상대 경로일 수 있습니다. DataDirectory를 사용하는 경우 데이터베이스 파일은 대체 문자열이 가리키는 디렉터리의 하위 디렉터리 내에 있어야 합니다. 참고: 원격 서버, HTTP 및 UNC 경로 이름은 지원되지 않습니다. 데이터베이스 이름은 다음과 같이 키워드(keyword) 'database'(또는 해당 별칭 중 하나)로 지정해야 합니다. "AttachDbFileName=|DataDirectory|\data\YourDB.mdf;integrated security=true;database=YourDatabase" 로그 파일이 데이터 파일과 같은 디렉터리에 있고 주 데이터 파일을 연결할 때 'database' 키워드가 사용되면 오류가 생성됩니다. 이 경우에는 로그 파일을 제거해야 합니다. 데이터베이스가 연결되면 새 로그 파일이 실제 경로에 따라 자동으로 생성됩니다. |
증명 프로토콜 | NotSpecified | 증명 프로토콜의 값을 가져오거나 설정합니다. 값을 지정하지 않으면 연결에서 보안 Enclave를 사용할 수 없습니다. 유효한 값은 다음과 같습니다. AAS HGS None (v3.1 및 v4.1 이상에서만 유효) |
인증 | N/A | 에 사용 되는 인증 방법을 SQL Database에서 사용 하 여 Azure Active Directory 인증을 연결할합니다. 유효한 값은 다음과 같습니다. Active Directory Integrated , Active Directory Interactive , Active Directory Password , Active Directory Service Principal , Active Directory Device Code Flow , Active Directory Managed Identity , Active Directory MSI , Active Directory Default , Sql Password .자세한 내용은 SqlClient에서 Azure Active Directory 인증 사용을 참조하세요. |
열 암호화 설정 | disabled | 연결에 대한 Always Encrypted 기능을 사용하거나 사용하지 않도록 설정합니다. 지원되는 값은 및 입니다 enabled . disabled |
명령 시간 제한 | 30 | 명령 실행 시도를 종료하고 오류를 생성하기 전의 기본 대기 시간(초)입니다. Connection LifeTime유효한 값은 0 보다 크거나 2147483647 작거나 같습니다. |
연결 다시 시도 횟수 또는 ConnectRetryCount |
1 | 클라이언트가 유휴 연결 실패를 식별한 후 다시 연결 시도 횟수를 제어합니다. 유효한 값은 0~255입니다. 0은 다시 연결하지 않음을 의미합니다(연결 복원력 사용 안 함). 참고: 버전 5.x부터 비 Azure 엔드포인트의 기본값은 1입니다. Azure SQL 엔드포인트의 경우 기본값은 2입니다. Azure SQL 서버리스 또는 주문형 엔드포인트의 경우 유휴 또는 일시 중지된 instance 연결에 대한 연결 성공을 개선하기 위한 기본값은 5입니다. 유휴 연결 복원력에 대한 자세한 내용은 연결 다시 시도에 대한 .NET SqlConnection 매개 변수 및 기술 문서 - 유휴 연결 복원력을 참조하세요. |
연결 다시 시도 간격 또는 ConnectRetryInterval |
10 | 각 연결 재시ConnectRetryCount 도() 사이의 시간을 지정합니다. 유효한 값은 첫 번째 다시 연결 시도 후에 적용된 1~60초(기본값=10)입니다. 연결이 끊어지면 클라이언트는 즉시 다시 연결을 시도합니다. 이는 첫 번째 다시 연결 시도이며 가 0보다 큰 경우에만 ConnectRetryCount 발생합니다. 첫 번째 다시 연결 시도가 실패하고 ConnectRetryCount 1보다 큰 경우 클라이언트는 두 번째 및 후속 다시 연결 시도를 시도하기 위해 대기 ConnectRetryInterval 합니다.유휴 연결 복원력에 대한 자세한 내용은 연결 다시 시도에 대한 .NET SqlConnection 매개 변수 및 기술 문서 - 유휴 연결 복원력을 참조하세요. |
연결 제한 시간 또는 연결 제한 시간 또는 제한 시간 |
15 | 시도를 종료하고 오류를 생성하기 전에 서버에 연결할 때까지 대기하는 시간(초)입니다. Connection LifeTime유효한 값은 0 보다 크거나 2147483647 작거나 같습니다. Azure SQL Database에 대한 연결을 열 때 연결 시간 제한을 30초로 설정합니다. |
현재 언어 또는 언어 |
N/A | 데이터베이스 서버 경고 또는 오류 메시지에 사용되는 언어를 설정합니다. 언어 이름은 128자 이하일 수 있습니다. |
데이터 원본 또는 서버 또는 주소 또는 Addr 또는 네트워크 주소 |
N/A | 연결할 SQL Server instance 이름 또는 네트워크 주소입니다. 포트 번호는 서버 이름 다음에 지정할 수 있습니다.server=tcp:servername, portnumber 로컬 instance 지정할 때는 항상 (로컬)을 사용합니다. 프로토콜을 강제로 적용하려면 다음 접두사 중 하나를 추가합니다. np:(local), tcp:(local), lpc:(local) 다음과 같이 LocalDB 데이터베이스에 연결할 수도 있습니다. server=(localdb)\\myInstance LocalDB에 대한 자세한 내용은 LocalDB에 대한 SqlClient 지원을 참조하세요. 데이터 원본 은 TCP 형식 또는 명명된 파이프 형식을 사용해야 합니다. TCP 형식은 다음과 같습니다. - tcp:<host name>\<instance name> - tcp:<host name,TCP></IP 포트 번호> TCP 형식은 접두사 "tcp:"로 시작해야 하며 호스트 이름과 instance 이름으로 지정된 대로 데이터베이스 instance 뒤에 와야 합니다. 이 형식은 Azure SQL 데이터베이스에 연결할 때 적용되지 않습니다. 프로토콜이 지정되지 않은 경우 Azure SQL Database에 연결하기 위해 TCP가 자동으로 선택됩니다. 호스트 이름은 다음 방법 중 하나로 지정해야 합니다. - NetBIOSName - IPv4Address - IPv6Address instance 이름은 데이터베이스 instance 호스트되는 특정 TCP/IP 포트 번호로 resolve 데 사용됩니다. 또는 TCP/IP 포트 번호를 직접 지정할 수도 있습니다. instance 이름과 포트 번호가 모두 없는 경우 기본 데이터베이스 instance 사용됩니다. 명명된 파이프 형식은 다음과 같습니다. - np:\\<host name>\pipe\<pipe name> 명명된 파이프 형식은 접두사 "np:"로 시작해야 하며 그 뒤에 명명된 파이프 이름이 잇습니다. 호스트 이름은 다음 방법 중 하나로 지정해야 합니다. - NetBIOSName - IPv4Address - IPv6Address 파이프 이름은 .NET 애플리케이션이 연결할 데이터베이스 instance 식별하는 데 사용됩니다. 네트워크 키의 값을 지정하면 접두사 "tcp:" 및 "np:"를 지정하면 안 됩니다. 참고: tcp: 접두사를 연결 문자열 서버 이름에 또는 localhost를 사용하여 공유 메모리 대신 TCP를 강제로 사용할 수 있습니다. |
Enclave 증명 URL | 해당 없음 | enclave 기반 Always Encrypted 사용할 enclave 증명 URL을 가져오거나 설정합니다. |
Encrypt | 4.0 이상에서 'true' 3.x 이하의 'false' |
인식된 값은 다음과 같습니다. 버전 1 - 4: true /yes 및 false /no 버전 5 이상: true mandatory /yes /, false no //optional 및 .strict 이면 true 서버에 인증서가 설치된 경우 클라이언트와 서버 간에 전송되는 모든 데이터에 TLS 암호화가 사용됩니다. 인 경우 strict TDS 8.0 TLS 암호화가 사용되고 TrustServerCertificate 설정이 무시되고 false로 처리됩니다. 자세한 내용은 연결 문자열 구문을 참조하세요.Encrypt 가 mandatory 또는 strict 이false 면 TrustServerCertificate 서버 인증서의 서버 이름(또는 IP 주소)이 연결 문자열 지정된 서버 이름(또는 IP 주소)과 정확히 일치해야 합니다. 그렇지 않으면 연결을 시도할 경우 실패합니다. |
Enlist | 'true' | true 는 SQL Server 연결 풀러가 생성 스레드의 현재 트랜잭션 컨텍스트에서 연결을 자동으로 등록한다는 것을 나타냅니다. |
장애 조치(failover) 파트너 | N/A | 데이터베이스 미러링이 구성된 장애 조치(failover) 파트너 서버의 이름입니다. 이 키의 값이 ""이면 초기 카탈로그 가 있어야 하며 해당 값이 ""이 아니어야 합니다. 서버 이름은 128자 이하일 수 있습니다. 장애 조치(failover) 파트너를 지정하지만 장애 조치(failover) 파트너 서버가 데이터베이스 미러링에 대해 구성되지 않았고 주 서버(서버 키워드(keyword) 지정됨)를 사용할 수 없는 경우 연결이 실패합니다. 장애 조치(failover) 파트너를 지정하고 주 서버가 데이터베이스 미러링에 대해 구성되지 않은 경우 주 서버를 사용할 수 있는 경우 주 서버(서버 키워드(keyword) 지정됨)에 대한 연결이 성공합니다. |
장애 조치(Failover) 파트너 SPN 또는 FailoverPartnerSPN |
해당 없음 | 장애 조치(failover) 파트너의 SPN입니다. 기본값은 빈 문자열이므로 SqlClient는 드라이버에서 생성된 기본 SPN을 사용합니다. (v5.0 이상에서만 사용 가능) |
인증서의 호스트 이름 또는 HostNameInCertificate |
해당 없음 | 서버 인증서의 유효성을 검사할 때 사용할 호스트 이름입니다. 지정하지 않으면 데이터 원본의 서버 이름이 인증서 유효성 검사에 사용됩니다. (v5.0 이상에서만 사용 가능) |
서버 인증서 또는 ServerCertificate |
해당 없음 | SQL Server TLS/SSL 인증서와 일치하는 인증서 파일의 경로입니다. 허용되는 인증서 형식은 PEM, DER 및 CER입니다. 지정된 경우 제공된 ServerCertificate가 정확히 일치하는지 확인하여 SQL Server 인증서를 확인합니다. (v5.1 이상에서만 사용 가능) |
초기 카탈로그 또는 데이터베이스 |
N/A | 데이터베이스의 이름입니다. 데이터베이스 이름은 128자 이하일 수 있습니다. |
Integrated Security 또는 Trusted_Connection |
'false' | 이면 false 연결에 사용자 ID 및 암호가 지정됩니다. 이면 true 현재 Windows 계정 자격 증명이 인증에 사용됩니다.인식된 값은 true , false , , no yes 및 sspi (강력하게 권장됨)이며 와 동일합니다true .사용자 ID 및 암호 지정 되 고 통합 하는 경우 보안이 true를 사용자 ID로 설정 하 고 암호 무시 되 고 통합 보안이 사용 됩니다. SqlCredential는 SQL Server 인증( Integrated Security=false )을 사용하는 연결에 대한 자격 증명을 지정하는 보다 안전한 방법입니다. |
IP 주소 기본 설정 또는 IPAddressPreference |
IPv4First | TCP 연결을 설정할 때 IP 주소 패밀리 기본 설정입니다. (.NET Framework) 또는 Multi Subnet Failover 가 true로 설정된 경우 Transparent Network IP Resolution 이 설정은 적용되지 않습니다. 지원되는 값은 다음과 같습니다.IPAddressPreference=IPv4First IPAddressPreference=IPv6First IPAddressPreference=UsePlatformDefault |
Load Balance Timeout 또는 에서 지정한 값을 초과하면 연결이 제거됩니다Connection Lifetime |
0 | 연결이 풀로 반환되면 연결을 만든 시간을 현재 시간과 비교하여 이 시간 간격(초)이 Connection Lifetime 에서 지정한 값을 초과하는 경우 연결이 제거됩니다. 이는 클러스터링된 구성에서 실행 중인 서버와 방금 온라인 상태가 된 서버 사이에 로드 균형 조정을 강제로 조정하는 데 유용합니다.값 영(0)은 최대 연결 제한 시간이 풀링된 연결입니다. |
Max Pool Size | 100 | 풀에서 허용되는 최대 연결 수입니다. 유효한 값은 1보다 크거나 같습니다. 최소 풀 크기보다 작은 값은 오류를 생성합니다. |
Min Pool Size | 0 | 풀에서 허용되는 최소 연결 수입니다. 유효한 값은 0보다 크거나 같습니다. 이 필드의 0은 처음에 최소 연결이 열리지 않음을 의미합니다. 최대 풀 크기보다 큰 값은 오류를 생성합니다. |
Multiple Active Result Set 또는 MultipleActiveResultSets |
false | 때 true , 애플리케이션에서 여러 활성 결과 집합 (MARS)를 유지할 수 있습니다. 때 false , 애플리케이션을 처리 하거나 해당 연결에서 다른 일괄 작업을 실행할 수 있습니다 하나의 일괄 처리에서 모든 결과 집합을 취소 해야 합니다.인식되는 값은 true 및 false 입니다.자세한 내용은 MARS(여러 활성 결과 집합)를 참조하세요. |
다중 서브넷 장애 조치(failover) 또는 MultiSubnetFailover |
false | 항상 SQL Server 2012 이상 가용성 그룹 또는 SQL Server 2012 이상 장애 조치(failover) 클러스터 인스턴스의 가용성 그룹 수신기에 연결할 때 지정 multiSubnetFailover=True 합니다. multiSubnetFailover=True 는 (현재) 활성 서버에 대한 빠른 검색 및 연결을 제공하도록 SqlClient를 구성합니다. 가능한 값은 및 , True No 또는 False 1 및 입니다0 Yes . 예를 들면 다음과 같습니다.MultiSubnetFailover=True 기본값은 False 입니다. SqlClient의 Always On AG 지원에 대한 자세한 내용은 고가용성 재해 복구에 대한 SqlClient 지원을 참조하세요. |
Network Library 또는 네트워크 또는 Net |
N/A | SQL Server instance 대한 연결을 설정하는 데 사용되는 네트워크 라이브러리입니다. 지원되는 값은 다음과 같습니다. dbnmpntw(명명된 파이프) dbmsrpcn(Multiprotocol, Windows RPC) dbmsadsn(Apple Talk) dbmsgnet(VIA) dbmslpcn(공유 메모리) dbmsspxn(IPX/SPX) dbmssocn(TCP/IP) Dbmsvinn(반얀 덩굴) 해당하는 네트워크 DLL이 연결하는 시스템에 설치되어 있어야 합니다. 네트워크를 지정하지 않고 로컬 서버(예: "." 또는 "(로컬)")를 사용하는 경우 공유 메모리가 사용됩니다. 이 예제에서 네트워크 라이브러리는 Win32 Winsock TCP/IP(dbmssocn)이며 사용 중인 포트는 1433입니다. Network Library=dbmssocn;Data Source=000.000.000.000,1433; |
패킷 크기 | 8000 | SQL Server instance 통신하는 데 사용되는 네트워크 패킷의 크기(바이트)입니다. 패킷 크기는 512보다 크거나 같을 수 있으며 32768보다 작거나 같을 수 있습니다. |
암호 또는 PWD |
N/A | SQL Server 계정 로그온에 대 한 암호입니다. 이 옵션은 사용하지 않는 것이 좋습니다. 높은 수준의 보안을 유지 하려면 좋습니다 사용 하 여 Integrated Security 또는 Trusted_Connection 키워드 대신 사용합니다. SqlCredential는 SQL Server 인증을 사용하는 연결에 대한 자격 증명을 지정하는 보다 안전한 방법입니다.암호는 128자 미만여야 합니다. |
보안 정보 유지 또는 PersistSecurityInfo |
'false' | 또는 no (강력하게 권장됨)로 설정 false 하면 연결이 열려 있거나 열린 상태인 경우 암호 또는 액세스 토큰과 같은 보안에 중요한 정보가 연결의 일부로 반환되지 않습니다. 이 속성은 애플리케이션이 이미 열려 있는 데이터베이스 연결에서 암호를 읽어야 하는 경우에만 로 설정 true 해야 합니다. 의 기본값 false 은 보다 안전한 설정입니다. 이 속성에 를 사용하면 true 실수로 데이터베이스 암호를 로깅하거나 추적하는 등의 보안 위험에 애플리케이션이 열립니다.연결 문자열 다시 설정하면 암호를 포함한 모든 연결 문자열 값이 다시 설정됩니다. 인식되는 값은 true , false , yes 및 no 입니다. |
풀 차단 기간 또는 PoolBlockingPeriod |
자동 | 연결 풀에 대한 차단 기간 동작을 설정합니다. 자세한 내용은 PoolBlockingPeriod 속성을 참조하세요. |
Pooling | 'true' | 이 키의 값은 새로 만든 변수가 true로 설정 된 경우 연결 애플리케이션을 닫을 때 풀에 추가 됩니다. 다음으로 동일한 연결을 열려면 해당 연결이 풀에서 그려집니다. Connections 동일한 연결 문자열 있는 경우 동일하게 간주됩니다. 서로 다른 연결에는 서로 다른 연결 문자열이 있습니다. 이 키의 값은 "true", "false", "yes" 또는 "no"일 수 있습니다. |
복제 | 'false' | true 복제가 연결을 사용하여 지원되는 경우 |
서버 SPN 또는 ServerSPN |
해당 없음 | 데이터 원본에 대한 SPN입니다. 기본값은 빈 문자열로, SqlClient에서 드라이버에서 생성된 기본 SPN을 사용합니다. (v5.0 이상에서만 사용 가능) |
트랜잭션 바인딩 | Implicit Unbind | 인리스트먼트된 System.Transactions 트랜잭션과의 연결 연결을 제어합니다.가능한 값은 다음과 같습니다. Transaction Binding=Implicit Unbind; Transaction Binding=Explicit Unbind; 암시적 바인딩 해제로 인해 트랜잭션이 종료되면 연결이 트랜잭션에서 분리됩니다. 연결을 끊은 후 연결에 대한 추가 요청은 자동 커밋 모드로 수행됩니다. System.Transactions.Transaction.Current 속성은 트랜잭션이 활성화 상태인 동안 요청을 실행할 때 확인되지 않습니다. 트랜잭션이 종료된 후 추가 요청은 자동 커밋 모드로 수행됩니다.시스템이 마지막 명령이 완료되기 전에 (using 블록의 scope) 트랜잭션을 종료하면 을 throwInvalidOperationException합니다. 명시적 바인딩 해제를 사용하면 연결이 닫히거나 명시적 SqlConnection.TransactionEnlist(null) 이 호출될 때까지 연결이 트랜잭션에 연결된 상태로 유지됩니다. .NET Framework 4.0부터 암시적 바인딩 해제를 변경하면 명시적 바인딩 해제가 사용되지 않습니다. InvalidOperationException 가 참여한 트랜잭션이 아니거나 참여한 트랜잭션이 활성화되지 않았으면 Transaction.Current 이 throw됩니다. |
투명 네트워크 IP 확인 또는 TransparentNetworkIPResolution |
설명을 참조하세요. | 이 키의 값이 true 로 설정되면 애플리케이션은 특정 DNS 항목에 대한 모든 IP 주소를 검색하고 목록의 첫 번째 항목과 연결을 시도해야 합니다. 0.5초 이내에 연결되지 않으면 애플리케이션은 다른 모든 항목과 동시에 연결을 시도합니다. 첫 번째 항목과 연결될 경우 애플리케이션은 응답자 IP 주소로 연결을 설정합니다.키가 로 MultiSubnetFailover 설정된 true TransparentNetworkIPResolution 경우 는 무시됩니다.Failover Partner 키가 설정된 TransparentNetworkIPResolution 경우 는 무시됩니다.이 키의 값은 , , false yes 또는 no 이어야 true 합니다.의 yes 값은 값 true 과 동일하게 처리됩니다.의 no 값은 값 false 과 동일하게 처리됩니다.기본값은 다음과 같습니다.
|
서버 인증서 신뢰 또는 TrustServerCertificate |
'false' | 로 true 설정하면 TLS는 트러스트의 유효성을 검사하기 위해 인증서 체인을 바이패스할 때 채널을 암호화하는 데 사용됩니다. TrustServerCertificate가 로 true 설정되고 Encrypt가 로 false 설정된 경우 채널은 암호화되지 않습니다. 인식되는 값은 true , false , yes 및 no 입니다. 자세한 내용은 연결 문자열 구문을 참조하세요. |
형식 시스템 버전 | N/A | 애플리케이션에 필요한 형식 시스템을 나타내는 문자열 값입니다. 클라이언트 애플리케이션에 사용할 수 있는 기능은 SQL Server 버전과 데이터베이스 호환성 수준에 따라 달라집니다. 클라이언트 애플리케이션이 작성된 Type System Version을 명시적으로 설정하면 다른 버전의 SQL Server를 사용할 경우 애플리케이션이 중단되는 문제를 방지할 수 있습니다. 참고: 형식 시스템 버전은 SQL Server in-process를 실행하는 CLR(공용 언어 런타임) 코드에 대해 설정할 수 없습니다. 자세한 내용은 SQL Server 공용 언어 런타임 통합을 참조하세요. 가능한 값은 다음과 같습니다. 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 Microsoft.SqlServer.Types.dll의 필요를 지정 합니다. 다른 Type System Version 설정에는 Microsoft.SqlServer.Types.dll 버전 10.0.0.0이 필요합니다.Latest 는 사용되지 않으므로 사용하면 안 됩니다. Latest 은 Type System Version=SQL Server 2008; 와 동등합니다. |
사용자 ID 또는 UID 또는 사용자 |
N/A | SQL Server 로그인 계정입니다. 이 옵션은 사용하지 않는 것이 좋습니다. 높은 수준의 보안을 유지 하려면 좋습니다 사용 하 여 Integrated Security 또는 Trusted_Connection 키워드 대신 사용합니다. SqlCredential는 SQL Server 인증을 사용하는 연결에 대한 자격 증명을 지정하는 보다 안전한 방법입니다.사용자 ID는 128자 이내여야 합니다. |
User Instance | 'false' | 기본 SQL Server Express 인스턴스로부터 호출자의 계정으로 실행 되는 런타임 시작 인스턴스로 연결을 리디렉션하는지 여부를 나타내는 값입니다. |
워크스테이션 ID 또는 WSID |
로컬 컴퓨터 이름 | SQL Server 연결하는 워크스테이션의 이름입니다. ID는 128자 이하여야 합니다. |
다음 목록에는 내의 연결 풀링 값에 대한 유효한 이름이 포함되어 있습니다 ConnectionString. 자세한 내용은 SQL Server 연결 풀링(ADO.NET)을 참조하세요.
Connection Lifetime (또는 Load Balance Timeout)
Enlist
Max Pool Size
Min Pool Size
Pooling
부울 값이 필요한 키워드(keyword) 또는 연결 풀링 값을 설정하는 경우 'true' 대신 'yes'를 사용하고 'false' 대신 '아니요'를 사용할 수 있습니다. 정수 값은 문자열로 표시됩니다.
참고
SQL Server .NET Framework 데이터 공급자는 자체 프로토콜을 사용하여 SQL Server 통신합니다. 따라서 ODBC 계층을 추가하지 않으므로 SQL Server 연결할 때 ODBC DSN(데이터 원본 이름)을 사용할 수 없습니다.
참고
UDL(유니버설 데이터 링크) 파일은 SQL Server .NET Framework 데이터 공급자에 대해 지원되지 않습니다.
주의
이 릴리스에서 애플리케이션 (예: 연결 문자열에 추가 하는 대화 상자에서 사용자 ID와 암호 정보를 검색 하는 경우) 사용자 입력을 기반으로 연결 문자열을 생성할 때 주의 사용 해야 합니다. 애플리케이션 해야 사용자가 이러한 값에 추가 연결 문자열 매개 변수를 포함할 수 없습니다 (예를 들어 암호를 입력 "에서는 데이터베이스 somedb =" 다른 데이터베이스에 연결 하기 위해). 사용자 입력을 기반으로 연결 문자열을 생성해야 하는 경우 연결 문자열 유효성을 검사하고 이 문제를 제거하는 데 도움이 되는 새 SqlConnectionStringBuilder를 사용합니다. 자세한 내용은 연결 문자열 작성기 를 참조하세요.