허당 레몬도리

ODBC 연결하다가 한참 삽질하다가
결국 연결했다 흐흐흐

ODBC 추가를 하고

 필자의 구성사항
DNS종류:사용자 DSN
원본:MIcrosoft ODBC for Oracle
데이터 원본 이름 : "DDD"(사용하고자하는 이름) << 필히 기억하거나 확인하길("는 제거하세요)
설명: "" 비어두어도 된다.("는 제거하세요)
사용자 이름: "User Id"(사용자 이름:Database 접속 ID) ("는 제거하세요)
서버 : Oracle TNSNAMES.ORA파일안에 정의 되어있는 이름(오라클 클라이언트 설치 되어 있어야 함)
위와 같은 구성으로 등록되어 있음.
주의 사항 : 사용자DSN과 시스템 DSN이 있으니 잘 구분하시길.
데이터 원본 이름은 ConnectionString 작성 시에 필요하니 다시 와서 보지 않게 적어두거나 외워두자.

구성을 완료 했다면 접속 소스만 보자
Private mCon As ADODB.Connection
Call mCon.Open("Provider=MSDASQL; Data Source=DDD; User ID=" & sUID & "; Password=" & sPassword)

위와 같이 ConnectionString을 작성하면 이상없이 접속이 가능하다.

ConnectionString 작성 방법은 아래을 참고하자

(1) DSN 있는 ODBC 연결 방법 (MS OLE DB for ODBC)
   [Provider=MSDASQL;]

   {DSN=namelFileDSN=filename};
   [DATABASE=database;]

    UID=user;

    PWD=password
 
(2) SQL서버 : DSN 없는 ODBC 연결 방법 (MS SQL Server ODBC Driver)
   [Provider=MSDASQL;]

    Driver={SQL Server};

    Server=디비서버이름;
    Database=디비이름;

    UID=아이디;

    PWD=비밀번호 

   ex)

         Driver={SQL Server};

         Server=taeyo;

         Database=taeyoDB;

         UID=taeyo;
         PWD=11  

(3) Ms-Access : DSN 없는 ODBC 연결방법 (MS Access ODBC Driver)
   ex)

        Driver={Microsoft Access Driver (*.mdb)};
        DBQ=E:\NorthWind.mdb;

        DefaultDir=E:\;

        DriverId=25;
        FIL=MSAccess;ImplicitCommitSync=Yes;

        MaxBufferSize=512;

        MaxScanRows=8;
        PageTimeout=5;

        SafeTransactions=0;

        Threads=3;UID=admin;

        PWD=;

        UserCommitSync=Yes

(4) ORACLE : DSN 없는 ODBC 연결방법 (MS ODBC Driver for ORACLE)
   ex)

         Driver={Microsoft ODBC Driver for Oracle};

         ConnectString=OracleServer.world;

         UID=demo;

         PWD=demo

(5) SQL서버 : OLE DB 직접 접근 방법 (MS OLE DB for SQL Server)

   Provider=SQLOLEDB;
   Data Source=디비서버이름;
   Initial Catalog=디비이름;
   User id= 아이디;
   password= 비밀번호;
   Trusted Connection=사용자 인증 모드(true:NT인증모드 FALSE:복합모드사용);
   Current Language=사용언어식별;
   Network Address=Location으로 지정한 SQL Server의 네트워크 주소;
   Network Library=Net-Library(DLL)이름(경로나 .dll 파일 확장명 불가);
   Use Procedure for Prepare=저장프로시저사용;
   Auto Translate=OEM/ANSI문자 변환(TRUE);
   Packet Size=바이트단위의네트워크패킷크기(512-32767,기본:4096);
   Application Name=클라이언트응용프로그램이름;Workstation ID=워크스테이션식별문자열]
  
   ex)
  
   Provider= SQLOLEDB;
   Data Source= taeyo;
   Initial Catalog=taeyo;
   User id=taeyo;
   password= 11
   
(6) Ms-Access : OLE DB 직접 접근 방법 (MS OLE DB for Access)
   Provider=Microsoft.Jet.OLEDB.4.0; Data Source= MDB파일의 물리적인전체경로[;
Jet OLEDB:System Database=작업그룹정보파일의경로와파일이름;Jet OLEDB:Registry
Path=Jet엔진레지스트리키;Jet OLEDB:Database Password=암호]
   ex) Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\work\MyDb.mdb

(7) Oracle : OLE DB 직접 접근 방법 (MS OLE DB for ORACLE)
   Provider=MSDAORA

(8) MS Index Server (MS OLE DB Provider for Microsoft Index Server)
   Provider=MSIDXS

(9) MS Active Directory Service (MS OLE DB Provider for Microsoft Active
Directory Service)
   Provider=ADSDSOObject; Root=검색 시작할 ADsPath 개체(검색기준);Filter=RFC
960 형식의 검색 필터;Attributes=쉼표로 구분되는 반환될 특성의 목록[; Scope=Base
(기준개체(검색기준)만검색)lOneLevel

출처 : http://cafe.naver.com/walnuts/48

profile

허당 레몬도리

@LemonDory

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!