mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-06-18 13:57:03 +08:00
148 lines
8.2 KiB
HTML
148 lines
8.2 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
|
<title>Requests the next result set from a stored procedure</title>
|
|
</head>
|
|
<body class="docs"><div id="layout">
|
|
<div id="layout-content"><div id="function.db2-next-result" class="refentry">
|
|
<div class="refnamediv">
|
|
<h1 class="refname">db2_next_result</h1>
|
|
<p class="verinfo">(PECL ibm_db2 >= 1.0.0)</p><p class="refpurpose"><span class="refname">db2_next_result</span> — <span class="dc-title">
|
|
Requests the next result set from a stored procedure
|
|
</span></p>
|
|
|
|
</div>
|
|
<div class="refsect1 description" id="refsect1-function.db2-next-result-description">
|
|
<h3 class="title">说明</h3>
|
|
<div class="methodsynopsis dc-description">
|
|
<span class="methodname"><strong>db2_next_result</strong></span>
|
|
( <span class="methodparam"><span class="type">resource</span> <code class="parameter">$stmt</code></span>
|
|
) : <span class="type">resource</span></div>
|
|
|
|
|
|
|
|
<p class="para rdfs-comment">
|
|
A stored procedure can return zero or more result sets. While you handle
|
|
the first result set in exactly the same way you would handle the results
|
|
returned by a simple SELECT statement, to fetch the second and subsequent
|
|
result sets from a stored procedure you must call the
|
|
<span class="function"><strong>db2_next_result()</strong></span> function and return the result to a
|
|
uniquely named PHP variable.
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<div class="refsect1 parameters" id="refsect1-function.db2-next-result-parameters">
|
|
<h3 class="title">参数</h3>
|
|
<p class="para">
|
|
<dl>
|
|
|
|
|
|
<dt>
|
|
<code class="parameter">stmt</code></dt>
|
|
|
|
<dd>
|
|
|
|
<p class="para">
|
|
A prepared statement returned from <span class="function"><a href="db2_exec.html" class="function">db2_exec()</a></span> or
|
|
<span class="function"><a href="db2_execute.html" class="function">db2_execute()</a></span>.
|
|
</p>
|
|
</dd>
|
|
|
|
|
|
</dl>
|
|
|
|
</p>
|
|
</div>
|
|
|
|
<div class="refsect1 returnvalues" id="refsect1-function.db2-next-result-returnvalues">
|
|
<h3 class="title">返回值</h3>
|
|
<p class="para">
|
|
Returns a new statement resource containing the next result set if the
|
|
stored procedure returned another result set. Returns <strong><code>FALSE</code></strong> if the stored
|
|
procedure did not return another result set.
|
|
</p>
|
|
</div>
|
|
|
|
|
|
<div class="refsect1 examples" id="refsect1-function.db2-next-result-examples">
|
|
<h3 class="title">范例</h3>
|
|
<p class="para">
|
|
<div class="example" id="example-1265">
|
|
<p><strong>Example #1 Calling a stored procedure that returns multiple result sets</strong></p>
|
|
<div class="example-contents"><p>
|
|
In the following example, we call a stored procedure that returns three
|
|
result sets. The first result set is fetched directly from the same
|
|
statement resource on which we invoked the CALL statement, while the
|
|
second and third result sets are fetched from statement resources
|
|
returned from our calls to the <span class="function"><strong>db2_next_result()</strong></span>
|
|
function.
|
|
</p></div>
|
|
<div class="example-contents">
|
|
<div class="phpcode"><pre><span style="color: #000000">
|
|
<span style="color: #0000BB"><?php<br />$conn </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_connect</span><span style="color: #007700">(</span><span style="color: #0000BB">$database</span><span style="color: #007700">, </span><span style="color: #0000BB">$user</span><span style="color: #007700">, </span><span style="color: #0000BB">$password</span><span style="color: #007700">);<br /><br />if (</span><span style="color: #0000BB">$conn</span><span style="color: #007700">) {<br /> </span><span style="color: #0000BB">$stmt </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_exec</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #DD0000">'CALL multiResults()'</span><span style="color: #007700">);<br /><br /> print </span><span style="color: #DD0000">"Fetching first result set\n"</span><span style="color: #007700">;<br /> while (</span><span style="color: #0000BB">$row </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_fetch_array</span><span style="color: #007700">(</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">)) {<br /> </span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$row</span><span style="color: #007700">);<br /> }<br /><br /> print </span><span style="color: #DD0000">"\nFetching second result set\n"</span><span style="color: #007700">;<br /> </span><span style="color: #0000BB">$res </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_next_result</span><span style="color: #007700">(</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">);<br /> if (</span><span style="color: #0000BB">$res</span><span style="color: #007700">) {<br /> while (</span><span style="color: #0000BB">$row </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_fetch_array</span><span style="color: #007700">(</span><span style="color: #0000BB">$res</span><span style="color: #007700">)) {<br /> </span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$row</span><span style="color: #007700">);<br /> }<br /> }<br /><br /> print </span><span style="color: #DD0000">"\nFetching third result set\n"</span><span style="color: #007700">;<br /> </span><span style="color: #0000BB">$res2 </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_next_result</span><span style="color: #007700">(</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">);<br /> if (</span><span style="color: #0000BB">$res2</span><span style="color: #007700">) {<br /> while (</span><span style="color: #0000BB">$row </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_fetch_array</span><span style="color: #007700">(</span><span style="color: #0000BB">$res2</span><span style="color: #007700">)) {<br /> </span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$row</span><span style="color: #007700">);<br /> }<br /> }<br /><br /> </span><span style="color: #0000BB">db2_close</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">);<br />}<br /></span><span style="color: #0000BB">?></span>
|
|
</span>
|
|
</pre></div>
|
|
</div>
|
|
|
|
<div class="example-contents"><p>以上例程会输出:</p></div>
|
|
<div class="example-contents screen">
|
|
<div class="cdata"><pre>
|
|
Fetching first result set
|
|
array(2) {
|
|
[0]=>
|
|
string(16) "Bubbles "
|
|
[1]=>
|
|
int(3)
|
|
}
|
|
array(2) {
|
|
[0]=>
|
|
string(16) "Gizmo "
|
|
[1]=>
|
|
int(4)
|
|
}
|
|
|
|
Fetching second result set
|
|
array(4) {
|
|
[0]=>
|
|
string(16) "Sweater "
|
|
[1]=>
|
|
int(6)
|
|
[2]=>
|
|
string(5) "llama"
|
|
[3]=>
|
|
string(6) "150.00"
|
|
}
|
|
array(4) {
|
|
[0]=>
|
|
string(16) "Smarty "
|
|
[1]=>
|
|
int(2)
|
|
[2]=>
|
|
string(5) "horse"
|
|
[3]=>
|
|
string(6) "350.00"
|
|
}
|
|
|
|
Fetching third result set
|
|
array(1) {
|
|
[0]=>
|
|
string(16) "Bubbles "
|
|
}
|
|
array(1) {
|
|
[0]=>
|
|
string(16) "Gizmo "
|
|
}
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
</p>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</div></div></div></body></html> |