-
Notifications
You must be signed in to change notification settings - Fork 81
Expand file tree
/
Copy pathpg-put-line.xml
More file actions
149 lines (142 loc) · 4.5 KB
/
pg-put-line.xml
File metadata and controls
149 lines (142 loc) · 4.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- splitted from ./ja/functions/pgsql.xml, last change in rev 1.1 -->
<!-- EN-Revision: c43a3cd9b49627b8d42a4b6ad530e10e26ca30dd Maintainer: hirokawa Status: ready -->
<!-- CREDITS: takagi -->
<refentry xml:id="function.pg-put-line" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>pg_put_line</refname>
<refpurpose>NULL で終わる文字列を PostgreSQL バックエンドに送信する</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>bool</type><methodname>pg_put_line</methodname>
<methodparam choice="opt"><type>PgSql\Connection</type><parameter>connection</parameter></methodparam>
<methodparam><type>string</type><parameter>query</parameter></methodparam>
</methodsynopsis>
<para>
<function>pg_put_line</function> は、NULL で終わる文字列を PostgreSQL
バックエンドサーバーに送信します。これは、PostgreSQL の
<literal>COPY FROM</literal> コマンドとともに使用する場合に必要となります。
</para>
<para><literal>COPY</literal> は、PostgreSQL によってサポートされている
高速なデータ読み込みインターフェイスです。データの内容はパースされず、
一度のトランザクションで実行されます。
</para>
<para>
低レベルな <function>pg_put_line</function> コマンドを用いない別の方法は、
<function>pg_copy_from</function> を使用することです。これは、はるかに
シンプルなインターフェイスです。
</para>
<note>
<para>
<function>pg_end_copy</function> を実行する際には、送信データの最後に
明示的に "\." の 2 文字を送信する必要があります。これによって、
バックエンドに対してデータ送信の終了を通知します。
</para>
</note>
<warning>
<para>
<function>pg_put_line</function> を使用すると、
<function>pg_lo_read</function> や <function>pg_lo_tell</function> など、
ほとんどのラージオブジェクト操作がその後失敗するようになります。
かわりに <function>pg_copy_from</function> および
<function>pg_copy_to</function> が使用可能です。
</para>
</warning>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>connection</parameter></term>
<listitem>
&pgsql.parameter.connection-with-unspecified-default;
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>query</parameter></term>
<listitem>
<para>
PostgreSQL バックエンドに直接送信されるテキストデータ。
最後に <literal>NULL</literal> が自動的に付加されます。
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.success;
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
&pgsql.changelog.connection-object;
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><function>pg_put_line</function> の例</title>
<programlisting role="php">
<![CDATA[
<?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);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>pg_end_copy</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->