라이브러리
[PHP] PdoPgsql::lobOpen - 기존 대형 개체 스트림을 엽니다.
PHP 에서 PdoPgsql::lobOpen은 PostgreSQL 데이터베이스와의 연결에서 Large OBject(LOB) 데이터를 다루기 위한 메서드입니다. LOB 데이터는 큰 크기의 바이너리 데이터를 의미하며, 이미지, 동영상, 오디오 등이 해당됩니다.
PdoPgsql::lobOpen 메서드는 LOB 데이터를 읽거나 쓰기 위해 사용됩니다. 이 메서드는 두 개의 인자를 받습니다. 첫 번째 인자는 LOB 데이터의 이름, 두 번째 인자는 읽기(READ) 또는 쓰기(WRITE) 모드를 지정합니다.
예제 1: LOB 데이터 읽기
#hostingforum.kr
php
// PostgreSQL 데이터베이스 연결
$db = new PDO('pgsql:host=localhost;dbname=mydb', '사용자이름', '비밀번호');
// LOB 데이터 읽기
$lob = $db->prepare('SELECT file_data FROM mytable WHERE id = 1');
$lob->execute();
$file_data = $lob->fetchColumn();
// LOB 데이터를 파일로 저장
$fp = fopen('file_data.bin', 'wb');
fwrite($fp, $file_data);
fclose($fp);
// LOB 데이터를 해제
$db->exec('CLOSE file_data');
$db = null;
예제 2: LOB 데이터 쓰기
#hostingforum.kr
php
// PostgreSQL 데이터베이스 연결
$db = new PDO('pgsql:host=localhost;dbname=mydb', '사용자이름', '비밀번호');
// LOB 데이터 쓰기
$file_data = file_get_contents('file_data.bin');
$stmt = $db->prepare('INSERT INTO mytable (file_data) VALUES ($1)');
$stmt->bindParam(1, $file_data, PDO::PARAM_LOB);
$stmt->execute();
// LOB 데이터를 해제
$db->exec('CLOSE file_data');
$db = null;
예제 3: LOB 데이터 읽기 및 쓰기
#hostingforum.kr
php
// PostgreSQL 데이터베이스 연결
$db = new PDO('pgsql:host=localhost;dbname=mydb', '사용자이름', '비밀번호');
// LOB 데이터 읽기
$lob = $db->prepare('SELECT file_data FROM mytable WHERE id = 1');
$lob->execute();
$file_data = $lob->fetchColumn();
// LOB 데이터를 수정
$file_data = str_replace('원본 데이터', '수정된 데이터', $file_data);
// LOB 데이터를 쓰기
$stmt = $db->prepare('UPDATE mytable SET file_data = $1 WHERE id = 1');
$stmt->bindParam(1, $file_data, PDO::PARAM_LOB);
$stmt->execute();
// LOB 데이터를 해제
$db->exec('CLOSE file_data');
$db = null;
참고
- PostgreSQL 데이터베이스와의 연결을 위해 PDO를 사용합니다.
- LOB 데이터를 읽거나 쓰기 위해 prepare() 메서드를 사용합니다.
- LOB 데이터를 읽거나 쓰기 위해 execute() 메서드를 사용합니다.
- LOB 데이터를 해제하기 위해 CLOSE 명령어를 사용합니다.
- LOB 데이터를 다루기 위해 PARAM_LOB 인자를 사용합니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.