(PHP 8 >= 8.4.0)
Pdo\Pgsql::copyFromFile — Copia datos de un fichero a una tabla
$tableName,$filename,$separator = "\t",$nullAs = "\\\\N",$fields = null
Copia datos de un fichero especificado por filename
a la tabla tableName utilizando
separator como delimitador de campos y la lista fields
tableNamefilenameseparatorrows.
nullAsNULL.
fields
Si filename no puede abrirse para lectura, el fallo
se notifica a través del manejo de errores de la conexión
(véase PDO::ATTR_ERRMODE); con
PDO::ERRMODE_EXCEPTION se lanza una
PDOException.
Ejemplo #1 Ejemplo de Pdo\Pgsql::copyFromFile()
El fichero contiene un registro por línea, con los campos unidos por
separator (un tabulador por defecto).
<?php
$db = new Pdo\Pgsql('pgsql:dbname=test host=localhost', $user, $pass);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->exec('CREATE TABLE fruits (id int, name text, qty int)');
file_put_contents('/tmp/fruits.tsv', "1\tapple\t10\n2\tbanana\t20\n");
$db->copyFromFile('fruits', '/tmp/fruits.tsv');
echo $db->query('SELECT count(*) FROM fruits')->fetchColumn(), "\n";
?>El ejemplo anterior mostrará:
2