"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 — Copie une table dans un tableau
$connection,$table_name,$separator = "\t",$null_as = "\\\\N"
pg_copy_to() copie la table
table_name dans un tableau.
Cette fonction utilise la commande interne
SQL COPY TO pour insérer les tableaux.
connectionUne instance PgSql\Connection.
table_name
Nom de la table à partir de laquelle les données dans
rows seront copiées.
delimiter
Le marqueur qui sépare les valeurs pour chaque champ dans chaque
élément de rows. Par défaut
\t.
null_as
Comment les valeurs NULL de SQL sont représentées
dans rows. Par défaut \\N ("\\\\N").
Un tableau avec un élément pour chaque ligne de données
COPY, ou false si une erreur survient.
| Version | Description |
|---|---|
| 8.1.0 |
Le paramètre connection attend désormais une instance de
PgSql\Connection ; auparavant, une resource était attendu.
|
Exemple #1 Exemple avec pg_copy_to()
<?php
$db = pg_connect("dbname=publisher") or die("Connexion impossible");
$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;");
?>