|
1 |
| -<!-- $Header: /cvsroot/pgsql/doc/src/sgml/protocol.sgml,v 1.35 2003/05/06 21:51:41 tgl Exp $ --> |
| 1 | +<!-- $Header: /cvsroot/pgsql/doc/src/sgml/protocol.sgml,v 1.36 2003/05/06 23:10:04 tgl Exp $ --> |
2 | 2 |
|
3 | 3 | <chapter id="protocol">
|
4 | 4 | <title>Frontend/Backend Protocol</title>
|
|
160 | 160 | (but note that these exist only within a session, and are never shared
|
161 | 161 | across sessions). Existing prepared statements and portals are
|
162 | 162 | referenced by names assigned when they were created. In addition,
|
163 |
| - an <quote>unnamed</> prepared statement and portal exist, for use with |
164 |
| - queries that are to be executed and forgotten. This is slightly |
165 |
| - more efficient than using named objects, since the backend knows that |
166 |
| - it need not save the object's state for re-use. |
| 163 | + an <quote>unnamed</> prepared statement and portal exist. Although these |
| 164 | + behave largely the same as named objects, operations on them are optimized |
| 165 | + for the case of executing a query only once and then discarding it, |
| 166 | + whereas operations on named objects are optimized on the expectation |
| 167 | + of multiple uses. |
167 | 168 | </para>
|
168 | 169 | </sect2>
|
169 | 170 | </sect1>
|
|
869 | 870 | zero or more CopyData messages (always one per row), followed by CopyDone.
|
870 | 871 | The backend then reverts to the command-processing mode it was
|
871 | 872 | in before the <command>COPY</> started, and sends CommandComplete.
|
872 |
| - The frontend cannot abort the transfer (short of closing the connection), |
| 873 | + The frontend cannot abort the transfer (except by closing the connection |
| 874 | + or issuing a Cancel request), |
873 | 875 | but it can discard unwanted CopyData and CopyDone messages.
|
874 | 876 | </para>
|
875 | 877 |
|
@@ -2013,9 +2015,10 @@ CommandComplete (B)
|
2013 | 2015 | <literal>INSERT <replaceable>oid</replaceable>
|
2014 | 2016 | <replaceable>rows</replaceable></literal>, where
|
2015 | 2017 | <replaceable>rows</replaceable> is the number of rows
|
2016 |
| - inserted, and <replaceable>oid</replaceable> is the object ID |
2017 |
| - of the inserted row if <Replaceable>rows</Replaceable> is 1, |
2018 |
| - otherwise <Replaceable>oid</Replaceable> is 0. |
| 2018 | + inserted. <replaceable>oid</replaceable> is the object ID |
| 2019 | + of the inserted row if <Replaceable>rows</Replaceable> is 1 |
| 2020 | + and the target table has OIDs; |
| 2021 | + otherwise <Replaceable>oid</Replaceable> is 0. |
2019 | 2022 | </Para>
|
2020 | 2023 |
|
2021 | 2024 | <Para>
|
|
0 commit comments