본문 바로가기
개발/DB 커넥션

[PHP, ORACLE] PHP & 오라클 디비 연결 테스트 (업데이트 2017-11-24)

by 언제나초심. 2010. 5. 31.
반응형

== 준비 ==

php.ini 에서 아래와 같은 php_oci 가 주석해제 하셔야 합니다. 


extension=php_oci8.dll      ; Use with Oracle 10gR2 Instant Client
extension=php_oci8_11g.dll  ; Use with Oracle 11gR2 Instant Client
extension=php_oci8_12c.dll  ; Use with Oracle Database 12c Instant Client

해당 버전에 맞는 것을 주석해제 합니다. *.ini 파일에서는 ; (쉼표) 가 주석입니다. 맨 앞의 쉼표를 제거해줍니다. 


예시)


;extension=php_oci


extension=php_oci



== 샘플 코드 ==


$dbuser="유저";
$dbpass="패스워드";

$dbsid = "(
  DESCRIPTION =
  (ADDRESS_LIST = 
   (ADDRESS = 
    (PROTOCOL = TCP)
    (HOST = localhost)
    (PORT = 1521)
   )
  )
  
  (CONNECT_DATA =
   (SERVER = DEDICATED)
   (SERVICE_NAME = XE)
  )
) ";

$conn = @oci_connect($dbuser,$dbpass,$dbsid);

if(!$conn) {
  echo "No Connection ".oci_error();
  exit;
} else {
 echo "Connect Success!";
}

$query = 'select * from dual';

$stmt = oci_parse($conn,$query);
oci_execute($stmt);


while($row = oci_fetch_assoc($stmt))
{
    print_r($row);
}


// 오라클 접속 닫기 
oci_free_statement($stmt);
// 오라클에서 로그아웃 
oci_close($conn); 




[참고]

OCILogon 은 oci_connect 의 alias 입니다. 둘다 같은 함수라고 생각하시면 되겠네요.

OCILogon 은 php5.4 몇 버전부터는 사용이 안 되는 듯 싶습니다. 그러므로 oci_connect 로 수정합니다. 

OCILogoff 는 oci_close 로 변경합니다.





== 연관된 포스트 ==

2016/02/05 - [Sources/PHP + MySQL] - PHP + MYSQL 연결 테스트 예제 (pdo 방식) (최종수정 2016/02/05)

2016/01/30 - [Sources/PHP + MySQL] - PHP + MYSQL 연결 테스트 예제 (mysqli 클래스 방식) (업데이트 2017-11-24)

2013/12/03 - [Sources/PHP + MySQL] - PHP + MYSQL 연결 테스트 예제 (original) (최종수정 2015/03/15)




== 참조 링크 ==

https://secure.php.net/manual/en/function.oci-parse.php

반응형