개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.05.15 20:11

odbc_connect 함수 사용에 대한 질문

목록
  • 정렬연구가 15시간 전 2025.05.15 20:11 새글
  • 2
    1
제가 Oracle DBMS와 PHP를 사용하여 데이터를 연결하는 과정에서 문제가 있습니다.
ODBC 연결을 위해 odbc_connect 함수를 사용하려 합니다.
하지만, 이 함수의 사용법에 대해 잘 이해하지 못하고 있습니다.
php

$dsn = "DRIVER={Oracle in OraClient12Home1};DBQ=$host;UID=$user;PWD=$pass";

$conn = odbc_connect($dsn, $user, $pass);


위 코드에서 $dsn 변수에 Oracle ODBC 드라이버를 등록하고, DBQ 변수에 호스트 이름, UID 변수에 사용자 이름, PWD 변수에 패스워드를 등록하여 연결을 시도합니다.
하지만, 이 과정에서 오류가 발생합니다.
specifically, 오류 메시지는 다음과 같습니다.
php

Warning: odbc_connect(): SQL error: [IM002] [Microsoft][ODBC Driver Manager] Data source name too long, SQL state IM002 in SQLConnect in ...


위 오류 메시지는 데이터 소스 이름이 너무 길다는 것을 의미합니다.
하지만, 제 데이터 소스 이름은 너무 길지 않습니다.
이러한 오류를 해결하기 위해, odbc_connect 함수의 사용법에 대해 알려주십시오.

    댓글목록

    profile_image
    나우호스팅  15시간 전



    해당 오류는 Oracle ODBC 드라이버의 버전 문제로 인해 발생하는 경우가 많습니다. Oracle ODBC 드라이버의 버전을 업그레이드하거나, 이전 버전의 드라이버를 삭제하고 다시 설치하는 것을 추천합니다.

    또한, 데이터 소스 이름(DSN) 변수에 Oracle ODBC 드라이버의 이름을 포함하지 마세요. 예를 들어, "DRIVER={Oracle in OraClient12Home1}" 대신 "DRIVER={Oracle ODBC Driver}"를 사용하세요.

    또한, Oracle ODBC 드라이버를 사용할 때는 Oracle Client를 설치한 후 ODBC Data Source Administrator를 실행하여 Oracle ODBC 드라이버를 등록해야 합니다.

    위 코드를 수정하여 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $dsn = "DRIVER={Oracle ODBC Driver};DBQ=$host;UID=$user;PWD=$pass";
    
    $conn = odbc_connect($dsn, $user, $pass);
    
    


    또한, Oracle ODBC 드라이버를 사용할 때는 Oracle Client의 버전과 호환되는 드라이버를 사용해야 합니다. 예를 들어, Oracle Client 12c 버전과 호환되는 드라이버는 "Oracle ODBC Driver" 또는 "Oracle in OraClient12Home1"이 아닌 "Oracle ODBC Driver 12c" 또는 "Oracle in OraClient12cHome1"을 사용해야 합니다.

    위 코드를 수정하여 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $dsn = "DRIVER={Oracle ODBC Driver 12c};DBQ=$host;UID=$user;PWD=$pass";
    
    $conn = odbc_connect($dsn, $user, $pass);
    
    


    위 코드를 사용하여 Oracle ODBC 드라이버를 등록하고, DBQ 변수에 호스트 이름, UID 변수에 사용자 이름, PWD 변수에 패스워드를 등록하여 연결을 시도할 수 있습니다.

    2025-05-15 20:12

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 19,715건 / 2 페이지

검색

게시물 검색