SunshinePHP Developer Conference 2015

pg_copy_to

(PHP 4 >= 4.2.0, PHP 5)

pg_copy_to 配列にテーブルをコピーする

説明

array pg_copy_to ( resource $connection , string $table_name [, string $delimiter [, string $null_as ]] )

pg_copy_to() は、テーブルを配列にコピーします。 レコードを取得するために、内部では COPY TO SQL コマンドを発行します。

パラメータ

connection

PostgreSQL データベースの接続リソース。

table_name

データを rows にコピーするテーブルの名前。

delimiter

rows の要素内で、各フィールドに対応する値を 区切る文字。デフォルトは TAB です。

null_as

rows の中で、SQL の NULL をどのように表現するか。デフォルトは \N ("\\N") です。

返り値

COPY されたデータが 1 行ごとにひとつの要素と なっている配列を返します。失敗した場合には FALSE を返します。

例1 pg_copy_to() の例

<?php
   $db 
pg_connect("dbname=publisher") or die("Could not connect");
   
   
$rows pg_copy_to($db$table_name);
   
   
pg_query($db"DELETE FROM $table_name");
   
   
pg_copy_from($db$table_name$rows);
?>

参考

add a note add a note

User Contributed Notes 2 notes

up
-1
etiger13 at gmail dot com
4 years ago
You cannot specify the schema name in this command. You can change the search path for just one query by using the following code:

<?php
pg_query
($conn, "SET search_path TO myschema;");
   
$copy_to = pg_copy_to($conn, 'tablename');
   
pg_query("RESET search_path;");
?>
up
-1
setantae at submonkey dot net
11 years ago
"It issues COPY TO SQL command internally to insert records"

I suspect this statement is incorrect, or that s/insert/retrieve/ is appropriate.
To Top