-
Notifications
You must be signed in to change notification settings - Fork 58
/
Copy pathdb2-fetch-both.xml
175 lines (160 loc) · 5.56 KB
/
db2-fetch-both.xml
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
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: e41806c30bf6975e452c0d4ce35ab0984c2fa68c Maintainer: tardeenfamenor Status: ready -->
<!-- Reviewed: no -->
<!-- Generated by xml_proto.php v2.2. Found in /scripts directory of phpdoc. -->
<refentry xml:id="function.db2-fetch-both" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>db2_fetch_both</refname>
<refpurpose>
Devolver un arreglo, indexado por el nombre y por la posición de la columna, representando una fila de un bloque de resultados
</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>array</type><methodname>db2_fetch_both</methodname>
<methodparam><type>resource</type><parameter>stmt</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>row_number</parameter><initializer>-1</initializer></methodparam>
</methodsynopsis>
<para>
Devuelve un arreglo, indexado por el nombre y por la posición de la columna, representando una
fila de un bloque de resultados. Hay que considerar que la fila devuelta por
<function>db2_fetch_both</function> requiere más memoria que las filas
devueltas por <function>db2_fetch_assoc</function> o <function>db2_fetch_array</function>, ya que
estas últimas sólo devuelven un índice.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>stmt</parameter></term>
<listitem>
<para>
Un recurso <literal>stmt</literal> válido que contenga los resultados.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>row_number</parameter></term>
<listitem>
<para>
Solicita una fila específica, indexada a partir de uno, del bloque de resultados. Este parámetro provoca
una advertencia de PHP si el resultado utiliza cursor de no-recorrido (sólo hacia adelante).
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve un arreglo asociativo con las columnas indexadas por el nombre y también por el número de
columna (indexada a partir de cero). El arreglo representa la siguiente fila o la fila específica solicitada
del bloque de resultados. Devuelve &false; si no hay más filas en los resultados o si la fila
solicitada por <parameter>row_number</parameter> no existe entre los resultados.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Iterando a través de un cursor de no-recorrido (sólo hacia adelante)</title>
<para>
Si se llama a <function>db2_fetch_both</function> sin especificar un número de fila,
automáticamente extrae la siguiente fila del bloque de resultados. El siguiente
ejemplo accesa a las columnas del arreglo devuelto utilizando tanto los nombres de la columnas
como sus posiciones en el índice.
</para>
<programlisting role="php">
<![CDATA[
<?php
$sql = "SELECT id, name, breed, weight FROM animals ORDER BY breed";
$stmt = db2_prepare($conn, $sql);
$result = db2_execute($stmt);
while ($row = db2_fetch_both($stmt)) {
printf ("%-5d %-16s %-32s %10s\n",
$row['ID'], $row[0], $row['BREED'], $row[3]);
}
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
0 Pook cat 3.20
5 Rickety Ride goat 9.70
2 Smarty horse 350.00
]]>
</screen>
</example>
<example>
<title>Extrayendo filas específicas con <function>db2_fetch_both</function>
a partir de un cursor de recorrido</title>
<para>
Si el bloque de resultados utiliza un cursor de recorrido, se puede llamar a
<function>db2_fetch_both</function> con un número específico de fila. El
siguiente ejemplo extrae cada fila del bloque de resultados, comenzando por
la segunda fila.
</para>
<programlisting role="php">
<![CDATA[
<?php
$sql = "SELECT id, name, breed, weight FROM animals ORDER BY breed";
$result = db2_exec($stmt, $sql, array('cursor' => DB2_SCROLLABLE));
$i=2;
while ($row = db2_fetch_both($result, $i)) {
printf ("%-5d %-16s %-32s %10s\n",
$row[0], $row['NAME'], $row[2], $row['WEIGHT']);
$i = $i + 2;
}
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
0 Pook cat 3.20
5 Rickety Ride goat 9.70
2 Smarty horse 350.00
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>db2_fetch_array</function></member>
<member><function>db2_fetch_assoc</function></member>
<member><function>db2_fetch_object</function></member>
<member><function>db2_fetch_row</function></member>
<member><function>db2_result</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
-->