"It issues COPY TO SQL command internally to insert records"
I suspect this statement is incorrect, or that s/insert/retrieve/ is appropriate.(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
pg_copy_to — Copy a table to an array
$connection,$table_name,$separator = "\t",$null_as = "\\\\N"
pg_copy_to() copies a table to an array. It
issues COPY TO SQL command internally to
retrieve records.
connectionAn PgSql\Connection instance.
table_name
Name of the table from which to copy the data into rows.
separator
The token that separates values for each field in each element of
rows. Default is \t.
null_as
How SQL NULL values are represented in the
rows. Default is \\N ("\\\\N").
| Version | Description |
|---|---|
| 8.1.0 |
The connection parameter expects an PgSql\Connection
instance now; previously, a resource was expected.
|
Example #1 pg_copy_to() example
<?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);
?>"It issues COPY TO SQL command internally to insert records"
I suspect this statement is incorrect, or that s/insert/retrieve/ is appropriate.Worth noting here that just like the COPY TO statement in PostgreSQL, '$table_name' can include a list of columns or be a select query as well.
e.g.:
$rows = pg_copy_to($db,'schema."TableName" (column1, column2, ...)';
$rows = pg_copy_to($db,'(SELECT ...)');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;");
?>