экспортировать oid в файл с помощью postgres и php - PullRequest
0 голосов
/ 28 октября 2019

Я хочу экспортировать все файлы, хранящиеся в моей базе данных (postgres), в папку на моем сервере и переименовать их. Что я сделал:

// integer, oid, varchar
$sql =  pg_query($conn,"select id, image, extension from table");
while($sqlRow = pg_fetch_assoc($sql)){
    $newimage= $sqlRow['id'].'.'.$sqlRow['extension']; 
    $path = '../_tmp/download/' . $newimage;
    pg_query($conn, "begin");
    $oid = pg_lo_create($conn);
    $handle = pg_lo_open($conn, $oid, "w");
    pg_lo_write($handle, "large object data");
    pg_lo_close($handle);
    pg_lo_export($conn, $oid, $path);   
    pg_query($conn, "commit");
}

С этим кодом я экспортирую и переименовываю мух, но при попытке открыть файлы выдает ошибку (неверный файл), и файлы имеют размер 1 КБи должен быть не менее 400 кбайт каждый.

Что здесь не так?

...