pg_put_line

(PHP 4 >= 4.0.3, PHP 5, PHP 7)

pg_put_lineWysyła łańcuch zakończony znakiem NULL do serwera PostgreSQL

Opis

pg_put_line ([ resource $connection ], string $data ) : bool

pg_put_line() wysyła łańcuch zakończony przez NULL do serwera PostgreSQL. Funkcja jest użyteczna do bardzo szybkiego wstawiania danych to tabel, inicjowanych przez operację copy PostgreSQL-a. Końcowy znak NULL jest wstawiany automatycznie. Zwraca TRUE w przypadku powodzenia, FALSE w przypadku błędu.

Informacja:

Aplikacja musi jawnie wysłać dwa znaki: "\." w końcowej linii, aby poinformować serwer że zakończyła wysyłać dane.

Zobacz także pg_end_copy().

Przykład #1 Szybkie wstawianie danych do tebeli

<?php 
    $conn 
pg_pconnect ("dbname=foo");
    
pg_query($conn"create table bar (a int4, b char(16), d float8)");
    
pg_query($conn"copy bar from stdin");
    
pg_put_line($conn"3\thello world\t4.5\n");
    
pg_put_line($conn"4\tgoodbye world\t7.11\n");
    
pg_put_line($conn"\\.\n");
    
pg_end_copy($conn);
?>

add a note add a note

User Contributed Notes 2 notes

up
2
kurt at nospam dot milliganshome dot net
18 years ago
This is the function you need if you are running into the infamous "must be superuser to COPY to or from a file" error from postgres.
up
0
smcbride at msn dot com
3 years ago
When using this function, don't get bit by using 'literal\tanotherliteral\n' issue by using single quotes vs. double quotes.  "literal\tanotherliteral\n" is not the same.  Many of the functions are impacted on how double quotes treats escape characters different than single quotes.  I forget it all the time.
To Top