Insere registros em uma tabela a partir de um array

# pg_copy_from

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

pg_copy_from — Insere registros em uma tabela a partir de um array

### Descrição

function pg_copy_from(
PgSql\Connection `$connection`,
string `$table_name`,
array|Traversable `$rows`,
string `$separator` = "\t",
string `$null_as` = "\\\\N"
): bool

pg_copy_from() insere registros em uma tabela a partir de `rows`. Ele emite um comando SQL `COPY FROM` internamente para inserir registros.

### Parâmetros

`connection`
  Uma instância de PgSql\Connection.
`table_name`

  Nome da tabela na qual copiar as `rows`.

`rows`

  Dados do tipo iterable a serem copiados em `table_name`. Cada valor em `rows` se torna uma linha em `table_name`. Cada valor em `rows` deve ser uma string delimitada dos valores a serem inseridos em cada campo. Os valores devem ser finalizados com avanço de linha.

`separator`

  O token que separa os valores de cada campo em cada elemento de `rows`. O padrão é `\t`.

`null_as`

  Como os valores SQL `NULL` são representados nas `rows`. O padrão é `\\N` (`"\\\\N"`).

### Valor Retornado

Retorna `true` em caso de sucesso ou `false` em caso de falha.

### Registro de Alterações

Versão | Descrição
--- | ---
8.5.0 | `rows` agora é do tipo iterable. Anteriormente era do tipo array.
8.1.0 | O parâmetro `connection` agora espera uma instância de PgSql\Connection; anteriormente, um resource era esperado.

### Exemplos

Exemplo #1 Exemplo de pg_copy_from()

    <?php
       $db = pg_connect("dbname=publisher") or die("Não foi possível conectar");

       $rows = pg_copy_to($db, $table_name);

       pg_query($db, "DELETE FROM $table_name");

       pg_copy_from($db, $table_name, $rows);
    ?>

### Veja Também

- pg_copy_to() - Copia uma tabela para um array

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open