pg_put_line() sends a NULL-terminated string to the PostgreSQL backend server. This is needed in conjunction with PostgreSQL's COPY FROM command.
COPY is a high-speed data loading interface supported by PostgreSQL. Data is passed in without being parsed, and in a single transaction.
An alternative to using raw pg_put_line() commands is to use pg_copy_from(). This is a far simpler interface.
Note:
The application must explicitly send the two characters "\." on the last line to indicate to the backend that it has finished sending its data, before issuing pg_end_copy().
PostgreSQL database connection resource. When connection
is not present, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().
A line of text to be sent directly to the PostgreSQL backend. A NULL terminator is added automatically.
Returns TRUE
on success or FALSE
on failure.
Use of the pg_put_line() causes most large object operations, including pg_lo_read() and pg_lo_tell(), to subsequently fail. You can use pg_copy_from() and pg_copy_to() instead.
1 2 3 4 5 6 7 8 9 | <?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 ); ?> |
Please login to continue.