manual을 보거나 게시판을 뒤져보면 large object에 대한 설명이 좀 있는데 실제
import를 하려면 이해가 가지 않는 점이 있습니다. 해서 중복되는 것 같지만
질문을 드립니다.
대개 PHP를 이용해서 large object를 import하는 과정을 다음과 같이 설명합니다.
$conn = pg_connec("dbname=db");
pg_exec($conn,"begin");
$obj = pg_locreate($conn);
$fp = pg_loopen($conn,$obj,"w");
pg_lowrite($fp,"$filename");
pg_loclose($fp);
pg_exec($conn,"commit");
pg_close($conn);
여기에서 query 명령을 어떻게 처리할 것인지에 대한 설명이 빠져 있는데요...
제가 보기에는 large object를 어딘가에 만드는 것처럼 느껴지는데, 실제
database의 적절한 위치에 넣으려면 query를 한번은 주어야 하지 않나요?
query를 어떻게 해야 하는지요? PostgreSQL manual에는 query를 다음과 같이
설명하고 있는데 이것을 PHP로는 어떻게 구현해야 하는지 잘 모르겠습니다.
insert into fruit values('peach',lo_import('/usr/images/peach.jpg');
또, PHP에는 pg_loimport라는 명령도 있던데 이것은 pg_lowrite와는 어떻게 다른
것인지요?
참, 추가로 질문 하나 더 드리겠습니다.
large object를 export/import 하는 위 query를 수행하려면 일반 user로는
불가능하고 postgres superuser만이 가능하더군요. 일반 user로 할 수 있는
방법은 없을까요? libpq의 function을 이용하라는 안내문이 나오던데 그건 또
어떻게 하라는 것일까요? programming쪽은 워낙 깡통이라 어려운 점이 좀
많습니다.
한꺼번에 질문을 너무 많이 드린 것 같아 죄송합니다.
|