PostgreSQL 函数
在线手册:中文 英文
PHP手册

pg_put_line

(PHP 4 >= 4.0.3, PHP 5)

pg_put_line向 PostgreSQL 后端发送以 NULL 结尾的字符串

说明

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

pg_put_line() 向 PostgreSQL 后端服务器发送以 NULL 结尾的字符串。例如可以通过 PostgreSQL 的 copy 操作来向表中高速插入数据。结尾的 NULL 字符会自动加入。成功时返回 TRUE, 或者在失败时返回 FALSE.

Note:

应用程序必须明确地在最后一行发送两个字符 "\." 来向后端指明发送数据结束。

Example #1 向表中高速插入数据

<?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);
?>

参数

connection

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().

data

A line of text to be sent directly to the PostgreSQL backend. A NULL terminator is added automatically.

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE.

范例

Example #2 pg_put_line() example

<?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);
?>

参见


PostgreSQL 函数
在线手册:中文 英文
PHP手册
PHP手册 - N: 向 PostgreSQL 后端发送以 NULL 结尾的字符串

用户评论:

kurt at nospam dot milliganshome dot net (22-Aug-2005 05:08)

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.