2010-06-19 3 views

답변

67

이들은 서로 동의어이며 사용할 수 있습니다 ngeably.

.Net에는 SQL Server 문자열을 처리하기 위해 매우 유용한 형식 보안 속성을 사용하는 연결 문자열이 있습니다. 그것은 하나 개의 값에서 다른 매핑 할 수 있도록이 클래스는 동의어의 내부 목록을 유지 :

 
+----------------------+-------------------------+ 
| Value    | Synonym     | 
+----------------------+-------------------------+ 
| app     | application name  | 
| async    | asynchronous processing | 
| extended properties | attachdbfilename  | 
| initial file name | attachdbfilename  | 
| connection timeout | connect timeout   | 
| timeout    | connect timeout   | 
| language    | current language  | 
| addr     | data source    | 
| address    | data source    | 
| network address  | data source    | 
| server    | data source    | 
| database    | initial catalog   | 
| trusted_connection | integrated security  | 
| connection lifetime | load balance timeout | 
| net     | network library   | 
| network    | network library   | 
| pwd     | password    | 
| persistsecurityinfo | persist security info | 
| uid     | user id     | 
| user     | user id     | 
| wsid     | workstation id   | 
+----------------------+-------------------------+ 

ODBCOleDb 연결을 다루는 다른 유사한 클래스가 있습니다

(리플렉터의 도움을 컴파일) 문자열이지만 불행히도 다른 데이터베이스 공급 업체는 없습니다. 이러한 구현을 제공하기 위해 공급 업체의 라이브러리에 부담이 있다고 가정합니다.

+0

사이드 노트 미래의 관중을위한이 : 신뢰할 수있는 연결이 나를 위해 SQL Server 2014에서 작동하지 않습니다. 통합 보안, 그래도 그걸로 갈거야! – statue

+4

SQL Express 2014에서 trusted_connection을 사용 중입니다 ... 작동 중입니다 ... 밑줄을주의하여 trust_connection을 사용할 때 "true"대신 "yes"를 사용해야합니다. –

9

이들은 동일합니다.

불행하게도을 포함하여이 같은 여러 가지 변형이있다 : 나는 변화의 기원의 확실하지 않다

서버/데이터 소스

데이터베이스/초기 카탈로그

, 나는 몇 가지 가정 (데이터베이스 중심이 아니므로 RDBMS에 연결하고 디렉토리 서비스에 연결하는 경우 연결 문자열이 매우 유사하게 나타납니다.)

+0

'카탈로그'라는 용어는 관계형 데이터베이스 명명법의 일부이며 RDBMS 이외의 다른 것을 의미하지는 않습니다. 이 SO 답변에서 아주 잘 설명되어 있습니다 : http://stackoverflow.com/questions/7022755/whats-the-difference-between-a-catalog-and-a-schema-in-a-relational-database – ProfK

2

그래서 조금 나중에 이름 충돌의 기원을 발견했습니다. 토큰 집합은 ODBC에서 사용되었으며 OLEDB에 대해 다른 집합이 사용되었습니다. 레거시 이유로 Sql Server의 경우에도 여전히 둘을 모두 지원합니다.

Trusted_Connection = true는 ODBC이고 Integrated Security = SSPI는 OLEDB입니다.

+1

http://www.connectionstrings.com/sql-server OLEDB에서 작동하는 것으로 보입니다. 다른 리소스가 있습니까? – Aligned

1

필자의 경우 "Trusted_Connection"과 "Integrated Security"의 차이점을 발견했습니다. Microsoft SQL Server 2005를 사용하고 있습니다. 원래 Windows 로그온 (통합 보안 = SSPI)을 사용했습니다. 그러나 사용자 ID와 암호를 추가하는 SQL Server 인증에 의한 Windows 인증을 바꿀 때 SSPI를 "False"로 바꾸지 못했습니다. "여러 단계 OLE DB 작업 생성 오류"가 반환되었습니다. 그러나 "Integrated Security = False"를 "Trusted_Connection = no"로 바꿨을 때 작동했습니다.

+0

SQL Server 인증을 사용하고 있고 사용자 ID와 암호를 지정하는 경우 "통합 보안"또는 "trusted_connections"에 대해 언급 할 필요가 없습니다. – grahamesd

관련 문제