유닉스 구현 만 살펴보면 ODBC 작동 방식에 대한 흥미로운 아이디어를 얻을 수 있습니다. 이러한 구현 중 어느 것도 Windows의 ODBC 구현 , 즉 Microsoft 의 관리자가 생성 한 참조 구현과 100 % 비교할 수 없습니다 .
Unix에는 일반적으로 두 개의 ODBC 드라이버 관리자가 있습니다. 이 질문과 관련된 문서가 여기에 있는 iODBC 는 고용주가 관리하고 지원합니다. UnixODBC 는 다른 것이며 다른 답변에서 논의되었습니다. 둘 다 표준에 대해 플랫폼에 구애받지 않는 구현이므로 서로 및 Windows 구현과 동등한 API를 의미합니다.
간단히 말해서, odbcinst.ini
환경에서 ODBC 드라이버 odbc.ini
의 레지스트리 및 구성 파일이고, 일반적으로 다른 서버에 등록 된 드라이버를 기반으로하는 ODBC DSN (데이터 소스 이름)의 레지스트리 및 구성 파일입니다.
몇 가지 구체적인 질문이 있습니다 ...
1) Driver = /path/to/file/.so
두 파일 모두에 줄 이 있으며 때로는 값이 다릅니다. 이것도 말이 되나요? 그렇다면 어느 것이 우선합니까?
가 Driver = /path/to/file.so
모두 경로로 표현되는 경우, 일반적으로 두 파일 모두 동일해야한다. 이어 odbc.ini
,이 항목 대신 할 수 Driver = {name of driver}
에서 인덱스로 이름입니다 odbcinst.ini
. 일반적으로 설정 odbc.ini
이 충돌하는 설정보다 우선 odbcinst.ini
합니다.
2) odbcinst.ini
자바 스크립트와 같은 "프로토 타입"은 odbc.ini
? 나는 일반적인 설정의 DSN의 번호를 생성하고있는 경우 즉, 나는에서 일반적인 설정을 홍보 할 수 odbc.ini
에 odbcinst.ini
?
아니요, odbcinst.ini
이런 식으로 "시제품"이 아닙니다. odbcinst.ini
설정은 드라이버 와 관련이 있지만 해당 드라이버를 기반으로하는 DSN 과는 관련이 없습니다 .
3) 사이의 차이가 무엇 Driver
과 Setup
의는 odbcinst.ini
? 그들은 같은 가치를 가진 것 같습니다. 이러한 설정은 데이터베이스에 특정한 것입니까 아니면 보편적입니까?
에서는 odbcinst.ini
의는 Driver =
드라이버 라이브러리와 의미 Setup =
설치 라이브러리. 후자는 전적으로 선택 사항이며, 존재하는 경우 데이터 연결 중에 사용할 필요는 없습니다. 주로 DSN으로 저장하기 위해 이러한 연결을 "설정"할 때 ODBC 관리자가 사용하기위한 것입니다. 때때로 이러한 라이브러리는 동일한 실제 파일에 있지만, 예를 들어 OS X 환경에 있지 않아도됩니다.