OSDN Git Service

FIRST REPOSITORY
[eos/hostdependOTHERS.git] / I686LINUX / util / I686LINUX / doc / postgresql / html / spi-spi-saveplan.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <HTML
3 ><HEAD
4 ><TITLE
5 >SPI_saveplan</TITLE
6 ><META
7 NAME="GENERATOR"
8 CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
9 REV="MADE"
10 HREF="mailto:pgsql-docs@postgresql.org"><LINK
11 REL="HOME"
12 TITLE="PostgreSQL 7.4.1 Documentation"
13 HREF="index.html"><LINK
14 REL="UP"
15 TITLE="Interface Functions"
16 HREF="spi.html#SPI-INTERFACE"><LINK
17 REL="PREVIOUS"
18 TITLE="SPI_cursor_close"
19 HREF="spi-spi-cursor-close.html"><LINK
20 REL="NEXT"
21 TITLE="Interface Support Functions"
22 HREF="spi-interface-support.html"><LINK
23 REL="STYLESHEET"
24 TYPE="text/css"
25 HREF="stylesheet.css"><META
26 NAME="creation"
27 CONTENT="2003-12-22T03:48:47"></HEAD
28 ><BODY
29 CLASS="REFENTRY"
30 ><DIV
31 CLASS="NAVHEADER"
32 ><TABLE
33 SUMMARY="Header navigation table"
34 WIDTH="100%"
35 BORDER="0"
36 CELLPADDING="0"
37 CELLSPACING="0"
38 ><TR
39 ><TH
40 COLSPAN="5"
41 ALIGN="center"
42 VALIGN="bottom"
43 >PostgreSQL 7.4.1 Documentation</TH
44 ></TR
45 ><TR
46 ><TD
47 WIDTH="10%"
48 ALIGN="left"
49 VALIGN="top"
50 ><A
51 HREF="spi-spi-cursor-close.html"
52 ACCESSKEY="P"
53 >Prev</A
54 ></TD
55 ><TD
56 WIDTH="10%"
57 ALIGN="left"
58 VALIGN="top"
59 ><A
60 HREF="spi-spi-cursor-close.html"
61 >Fast Backward</A
62 ></TD
63 ><TD
64 WIDTH="60%"
65 ALIGN="center"
66 VALIGN="bottom"
67 ></TD
68 ><TD
69 WIDTH="10%"
70 ALIGN="right"
71 VALIGN="top"
72 ><A
73 HREF="spi.html"
74 >Fast Forward</A
75 ></TD
76 ><TD
77 WIDTH="10%"
78 ALIGN="right"
79 VALIGN="top"
80 ><A
81 HREF="spi-interface-support.html"
82 ACCESSKEY="N"
83 >Next</A
84 ></TD
85 ></TR
86 ></TABLE
87 ><HR
88 ALIGN="LEFT"
89 WIDTH="100%"></DIV
90 ><H1
91 ><A
92 NAME="SPI-SPI-SAVEPLAN"
93 ></A
94 >SPI_saveplan</H1
95 ><DIV
96 CLASS="REFNAMEDIV"
97 ><A
98 NAME="AEN33756"
99 ></A
100 ><H2
101 >Name</H2
102 >SPI_saveplan&nbsp;--&nbsp;save a plan</DIV
103 ><A
104 NAME="AEN33759"
105 ></A
106 ><DIV
107 CLASS="REFSYNOPSISDIV"
108 ><A
109 NAME="AEN33761"
110 ></A
111 ><H2
112 >Synopsis</H2
113 ><PRE
114 CLASS="SYNOPSIS"
115 >void * SPI_saveplan(void * <VAR
116 CLASS="PARAMETER"
117 >plan</VAR
118 >)</PRE
119 ></DIV
120 ><DIV
121 CLASS="REFSECT1"
122 ><A
123 NAME="AEN33764"
124 ></A
125 ><H2
126 >Description</H2
127 ><P
128 >   <CODE
129 CLASS="FUNCTION"
130 >SPI_saveplan</CODE
131 > saves a passed plan (prepared by
132    <CODE
133 CLASS="FUNCTION"
134 >SPI_prepare</CODE
135 >) in memory protected from freeing
136    by <CODE
137 CLASS="FUNCTION"
138 >SPI_finish</CODE
139 > and by the transaction manager
140    and returns a pointer to the saved plan.  This gives you the
141    ability to reuse prepared plans in the subsequent invocations of
142    your procedure in the current session.  You may save the pointer
143    returned in a local variable.  Always check if this pointer is
144    <TT
145 CLASS="SYMBOL"
146 >NULL</TT
147 > or not either when preparing a plan or using
148    an already prepared plan in <CODE
149 CLASS="FUNCTION"
150 >SPI_execp</CODE
151 >.
152   </P
153 ></DIV
154 ><DIV
155 CLASS="REFSECT1"
156 ><A
157 NAME="AEN33772"
158 ></A
159 ><H2
160 >Arguments</H2
161 ><P
162 ></P
163 ><DIV
164 CLASS="VARIABLELIST"
165 ><DL
166 ><DT
167 ><TT
168 CLASS="LITERAL"
169 >void * <VAR
170 CLASS="PARAMETER"
171 >plan</VAR
172 ></TT
173 ></DT
174 ><DD
175 ><P
176 >      the plan to be saved
177      </P
178 ></DD
179 ></DL
180 ></DIV
181 ></DIV
182 ><DIV
183 CLASS="REFSECT1"
184 ><A
185 NAME="AEN33781"
186 ></A
187 ><H2
188 >Return Value</H2
189 ><P
190 >   Pointer to the saved plan; <TT
191 CLASS="SYMBOL"
192 >NULL</TT
193 > if unsuccessful.
194    On error, <VAR
195 CLASS="VARNAME"
196 >SPI_result</VAR
197 > is set thus:
198
199    <P
200 ></P
201 ></P><DIV
202 CLASS="VARIABLELIST"
203 ><DL
204 ><DT
205 ><TT
206 CLASS="SYMBOL"
207 >SPI_ERROR_ARGUMENT</TT
208 ></DT
209 ><DD
210 ><P
211 >       if <VAR
212 CLASS="PARAMETER"
213 >plan</VAR
214 > is <TT
215 CLASS="SYMBOL"
216 >NULL</TT
217 >
218       </P
219 ></DD
220 ><DT
221 ><TT
222 CLASS="SYMBOL"
223 >SPI_ERROR_UNCONNECTED</TT
224 ></DT
225 ><DD
226 ><P
227 >       if called from an unconnected procedure
228       </P
229 ></DD
230 ></DL
231 ></DIV
232 ><P>
233   </P
234 ></DIV
235 ><DIV
236 CLASS="REFSECT1"
237 ><A
238 NAME="AEN33799"
239 ></A
240 ><H2
241 >Notes</H2
242 ><P
243 >   If one of the objects (a table, function, etc.) referenced by the
244    prepared plan is dropped during the session then the results of
245    <CODE
246 CLASS="FUNCTION"
247 >SPI_execp</CODE
248 > for this plan will be unpredictable.
249   </P
250 ></DIV
251 ><DIV
252 CLASS="NAVFOOTER"
253 ><HR
254 ALIGN="LEFT"
255 WIDTH="100%"><TABLE
256 SUMMARY="Footer navigation table"
257 WIDTH="100%"
258 BORDER="0"
259 CELLPADDING="0"
260 CELLSPACING="0"
261 ><TR
262 ><TD
263 WIDTH="33%"
264 ALIGN="left"
265 VALIGN="top"
266 ><A
267 HREF="spi-spi-cursor-close.html"
268 ACCESSKEY="P"
269 >Prev</A
270 ></TD
271 ><TD
272 WIDTH="34%"
273 ALIGN="center"
274 VALIGN="top"
275 ><A
276 HREF="index.html"
277 ACCESSKEY="H"
278 >Home</A
279 ></TD
280 ><TD
281 WIDTH="33%"
282 ALIGN="right"
283 VALIGN="top"
284 ><A
285 HREF="spi-interface-support.html"
286 ACCESSKEY="N"
287 >Next</A
288 ></TD
289 ></TR
290 ><TR
291 ><TD
292 WIDTH="33%"
293 ALIGN="left"
294 VALIGN="top"
295 >SPI_cursor_close</TD
296 ><TD
297 WIDTH="34%"
298 ALIGN="center"
299 VALIGN="top"
300 ><A
301 HREF="spi.html#SPI-INTERFACE"
302 ACCESSKEY="U"
303 >Up</A
304 ></TD
305 ><TD
306 WIDTH="33%"
307 ALIGN="right"
308 VALIGN="top"
309 >Interface Support Functions</TD
310 ></TR
311 ></TABLE
312 ></DIV
313 ></BODY
314 ></HTML
315 >