1
<refentry id="MgResultSet">
3
<refentrytitle>MgResultSet</refentrytitle>
4
<manvolnum>3</manvolnum>
5
<refmiscinfo>LIBMERGEANT Library</refmiscinfo>
9
<refname>MgResultSet</refname><refpurpose>Encapsulates a result set returned by the execution of a SELECT statement</refpurpose>
12
<refsynopsisdiv><title>Synopsis</title>
18
struct <link linkend="MgResultSet-struct">MgResultSet</link>;
19
<link linkend="guint">guint</link> <link linkend="mg-resultset-get-type">mg_resultset_get_type</link> (void);
20
<link linkend="GObject">GObject</link>* <link linkend="mg-resultset-new">mg_resultset_new</link> (<link linkend="MgServer">MgServer</link> *srv,
21
<link linkend="GdaCommand">GdaCommand</link> *cmd,
22
<link linkend="GdaDataModel">GdaDataModel</link> *model);
23
<link linkend="gint">gint</link> <link linkend="mg-resultset-get-nbtuples">mg_resultset_get_nbtuples</link> (<link linkend="MgResultSet">MgResultSet</link> *rs);
24
<link linkend="gint">gint</link> <link linkend="mg-resultset-get-nbcols">mg_resultset_get_nbcols</link> (<link linkend="MgResultSet">MgResultSet</link> *rs);
25
<link linkend="gchar">gchar</link>* <link linkend="mg-resultset-get-item">mg_resultset_get_item</link> (<link linkend="MgResultSet">MgResultSet</link> *rs,
26
<link linkend="gint">gint</link> row,
27
<link linkend="gint">gint</link> col);
28
const <link linkend="GdaValue">GdaValue</link>* <link linkend="mg-resultset-get-gdavalue">mg_resultset_get_gdavalue</link> (<link linkend="MgResultSet">MgResultSet</link> *rs,
29
<link linkend="gint">gint</link> row,
30
<link linkend="gint">gint</link> col);
31
const <link linkend="gchar">gchar</link>* <link linkend="mg-resultset-get-col-name">mg_resultset_get_col_name</link> (<link linkend="MgResultSet">MgResultSet</link> *rs,
32
<link linkend="gint">gint</link> col);
33
<link linkend="void">void</link> <link linkend="mg-resultset-set-col-name">mg_resultset_set_col_name</link> (<link linkend="MgResultSet">MgResultSet</link> *rs,
34
<link linkend="gint">gint</link> col,
35
const <link linkend="gchar">gchar</link> *name);
36
<link linkend="GdaDataModel">GdaDataModel</link>* <link linkend="mg-resultset-get-data-model">mg_resultset_get_data_model</link> (<link linkend="MgResultSet">MgResultSet</link> *rs);
37
<link linkend="gboolean">gboolean</link> <link linkend="mg-resultset-check-model">mg_resultset_check_model</link> (<link linkend="MgResultSet">MgResultSet</link> *rs,
38
<link linkend="gint">gint</link> nbcols,
40
<link linkend="gboolean">gboolean</link> <link linkend="mg-resultset-check-data-model">mg_resultset_check_data_model</link> (<link linkend="GdaDataModel">GdaDataModel</link> *model,
41
<link linkend="gint">gint</link> nbcols,
43
<link linkend="gchar">gchar</link>* <link linkend="mg-resultset-get-row-as-string">mg_resultset_get_row_as_string</link> (<link linkend="MgResultSet">MgResultSet</link> *rs,
44
<link linkend="MgQuery">MgQuery</link> *query,
45
<link linkend="gint">gint</link> row,
46
<link linkend="gchar">gchar</link> *sep);
51
<title>Object Hierarchy</title>
54
<link linkend="GObject">GObject</link>
55
+----<link linkend="MgBase">MgBase</link>
66
<title>Properties</title>
69
"<link linkend="MgResultSet--prop">prop</link>" <link linkend="gpointer">gpointer</link> : Read / Write
74
<title>Signal Prototypes</title>
77
"<link linkend="MgResultSet-dummy">dummy</link>" <link linkend="void">void</link> user_function (<link linkend="MgResultSet">MgResultSet</link> *mgresultset,
78
<link linkend="gpointer">gpointer</link> user_data);
84
<title>Description</title>
86
Objects of this class are created by the <link linkend="MgServer"><type>MgServer</type></link> object in return of the execution of a SELECT statement
87
(using the <link linkend="mg-server-do-query"><function>mg_server_do_query()</function></link> function call). Acces to individual data is done through this object.
92
<title>Details</title>
94
<title><anchor id="MgResultSet-struct"/>struct MgResultSet</title>
95
<indexterm><primary>MgResultSet</primary></indexterm><programlisting>struct MgResultSet;</programlisting>
100
<title><anchor id="mg-resultset-get-type"/>mg_resultset_get_type ()</title>
101
<indexterm><primary>mg_resultset_get_type</primary></indexterm><programlisting><link linkend="guint">guint</link> mg_resultset_get_type (void);</programlisting>
104
</para><variablelist role="params">
105
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>
108
</simpara></listitem></varlistentry>
109
</variablelist></refsect2>
111
<title><anchor id="mg-resultset-new"/>mg_resultset_new ()</title>
112
<indexterm><primary>mg_resultset_new</primary></indexterm><programlisting><link linkend="GObject">GObject</link>* mg_resultset_new (<link linkend="MgServer">MgServer</link> *srv,
113
<link linkend="GdaCommand">GdaCommand</link> *cmd,
114
<link linkend="GdaDataModel">GdaDataModel</link> *model);</programlisting>
116
Creates a new <link linkend="MgResultSet"><type>MgResultSet</type></link> object</para>
119
</para><variablelist role="params">
120
<varlistentry><term><parameter>srv</parameter> :</term>
121
<listitem><simpara> a <link linkend="MgServer"><type>MgServer</type></link> object
122
</simpara></listitem></varlistentry>
123
<varlistentry><term><parameter>cmd</parameter> :</term>
124
<listitem><simpara> the <link linkend="GdaCommand"><type>GdaCommand</type></link> which returned a result (stored in <parameter>model</parameter>)
125
</simpara></listitem></varlistentry>
126
<varlistentry><term><parameter>model</parameter> :</term>
127
<listitem><simpara> the <link linkend="GdaDataModel"><type>GdaDataModel</type></link> result
128
</simpara></listitem></varlistentry>
129
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the new object
130
</simpara></listitem></varlistentry>
131
</variablelist></refsect2>
133
<title><anchor id="mg-resultset-get-nbtuples"/>mg_resultset_get_nbtuples ()</title>
134
<indexterm><primary>mg_resultset_get_nbtuples</primary></indexterm><programlisting><link linkend="gint">gint</link> mg_resultset_get_nbtuples (<link linkend="MgResultSet">MgResultSet</link> *rs);</programlisting>
136
Fetch the number of tuples (rows) in the resultset</para>
139
</para><variablelist role="params">
140
<varlistentry><term><parameter>rs</parameter> :</term>
141
<listitem><simpara> a <link linkend="MgResultSet"><type>MgResultSet</type></link> object
142
</simpara></listitem></varlistentry>
143
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the number of tuples
144
</simpara></listitem></varlistentry>
145
</variablelist></refsect2>
147
<title><anchor id="mg-resultset-get-nbcols"/>mg_resultset_get_nbcols ()</title>
148
<indexterm><primary>mg_resultset_get_nbcols</primary></indexterm><programlisting><link linkend="gint">gint</link> mg_resultset_get_nbcols (<link linkend="MgResultSet">MgResultSet</link> *rs);</programlisting>
150
Fetch the number of columns of a resultset</para>
153
</para><variablelist role="params">
154
<varlistentry><term><parameter>rs</parameter> :</term>
155
<listitem><simpara> a <link linkend="MgResultSet"><type>MgResultSet</type></link> object
156
</simpara></listitem></varlistentry>
157
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the number of columns
158
</simpara></listitem></varlistentry>
159
</variablelist></refsect2>
161
<title><anchor id="mg-resultset-get-item"/>mg_resultset_get_item ()</title>
162
<indexterm><primary>mg_resultset_get_item</primary></indexterm><programlisting><link linkend="gchar">gchar</link>* mg_resultset_get_item (<link linkend="MgResultSet">MgResultSet</link> *rs,
163
<link linkend="gint">gint</link> row,
164
<link linkend="gint">gint</link> col);</programlisting>
166
Get a textual version of an item in the resultset, situated at (row, col).</para>
169
</para><variablelist role="params">
170
<varlistentry><term><parameter>rs</parameter> :</term>
171
<listitem><simpara> a <link linkend="MgResultSet"><type>MgResultSet</type></link> object
172
</simpara></listitem></varlistentry>
173
<varlistentry><term><parameter>row</parameter> :</term>
175
</simpara></listitem></varlistentry>
176
<varlistentry><term><parameter>col</parameter> :</term>
178
</simpara></listitem></varlistentry>
179
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a new string.
180
</simpara></listitem></varlistentry>
181
</variablelist></refsect2>
183
<title><anchor id="mg-resultset-get-gdavalue"/>mg_resultset_get_gdavalue ()</title>
184
<indexterm><primary>mg_resultset_get_gdavalue</primary></indexterm><programlisting>const <link linkend="GdaValue">GdaValue</link>* mg_resultset_get_gdavalue (<link linkend="MgResultSet">MgResultSet</link> *rs,
185
<link linkend="gint">gint</link> row,
186
<link linkend="gint">gint</link> col);</programlisting>
188
Get an item in the resultset, situated at (row, col) as a GdaValue.</para>
191
</para><variablelist role="params">
192
<varlistentry><term><parameter>rs</parameter> :</term>
193
<listitem><simpara> a <link linkend="MgResultSet"><type>MgResultSet</type></link> object
194
</simpara></listitem></varlistentry>
195
<varlistentry><term><parameter>row</parameter> :</term>
197
</simpara></listitem></varlistentry>
198
<varlistentry><term><parameter>col</parameter> :</term>
200
</simpara></listitem></varlistentry>
201
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the item as a GdaValue
202
</simpara></listitem></varlistentry>
203
</variablelist></refsect2>
205
<title><anchor id="mg-resultset-get-col-name"/>mg_resultset_get_col_name ()</title>
206
<indexterm><primary>mg_resultset_get_col_name</primary></indexterm><programlisting>const <link linkend="gchar">gchar</link>* mg_resultset_get_col_name (<link linkend="MgResultSet">MgResultSet</link> *rs,
207
<link linkend="gint">gint</link> col);</programlisting>
209
Get a column name from a resultset.</para>
212
</para><variablelist role="params">
213
<varlistentry><term><parameter>rs</parameter> :</term>
214
<listitem><simpara> a <link linkend="MgResultSet"><type>MgResultSet</type></link> object
215
</simpara></listitem></varlistentry>
216
<varlistentry><term><parameter>col</parameter> :</term>
218
</simpara></listitem></varlistentry>
219
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the column's name
220
</simpara></listitem></varlistentry>
221
</variablelist></refsect2>
223
<title><anchor id="mg-resultset-set-col-name"/>mg_resultset_set_col_name ()</title>
224
<indexterm><primary>mg_resultset_set_col_name</primary></indexterm><programlisting><link linkend="void">void</link> mg_resultset_set_col_name (<link linkend="MgResultSet">MgResultSet</link> *rs,
225
<link linkend="gint">gint</link> col,
226
const <link linkend="gchar">gchar</link> *name);</programlisting>
228
Set a resultset's column's name</para>
231
</para><variablelist role="params">
232
<varlistentry><term><parameter>rs</parameter> :</term>
233
<listitem><simpara> a <link linkend="MgResultSet"><type>MgResultSet</type></link> object
234
</simpara></listitem></varlistentry>
235
<varlistentry><term><parameter>col</parameter> :</term>
237
</simpara></listitem></varlistentry>
238
<varlistentry><term><parameter>name</parameter> :</term>
240
</simpara></listitem></varlistentry>
241
</variablelist></refsect2>
243
<title><anchor id="mg-resultset-get-data-model"/>mg_resultset_get_data_model ()</title>
244
<indexterm><primary>mg_resultset_get_data_model</primary></indexterm><programlisting><link linkend="GdaDataModel">GdaDataModel</link>* mg_resultset_get_data_model (<link linkend="MgResultSet">MgResultSet</link> *rs);</programlisting>
246
Get <parameter>rs</parameter>'s associated <link linkend="GdaDataModel"><type>GdaDataModel</type></link></para>
249
</para><variablelist role="params">
250
<varlistentry><term><parameter>rs</parameter> :</term>
251
<listitem><simpara> a <link linkend="MgResultSet"><type>MgResultSet</type></link> object
252
</simpara></listitem></varlistentry>
253
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the <link linkend="GdaDataModel"><type>GdaDataModel</type></link>
254
</simpara></listitem></varlistentry>
255
</variablelist></refsect2>
257
<title><anchor id="mg-resultset-check-model"/>mg_resultset_check_model ()</title>
258
<indexterm><primary>mg_resultset_check_model</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> mg_resultset_check_model (<link linkend="MgResultSet">MgResultSet</link> *rs,
259
<link linkend="gint">gint</link> nbcols,
260
...);</programlisting>
262
Check the column types of a resultset.</para>
265
</para><variablelist role="params">
266
<varlistentry><term><parameter>rs</parameter> :</term>
267
<listitem><simpara> a <link linkend="MgResultSet"><type>MgResultSet</type></link> object
268
</simpara></listitem></varlistentry>
269
<varlistentry><term><parameter>nbcols</parameter> :</term>
270
<listitem><simpara> the requested number of columns
271
</simpara></listitem></varlistentry>
272
<varlistentry><term><parameter>...</parameter> :</term>
273
<listitem><simpara> <parameter>nbcols</parameter> arguments of type GdaValueType or -1 (if any data type is accepted)
274
</simpara></listitem></varlistentry>
275
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE if the resultset's columns match the provided data types and number
276
</simpara></listitem></varlistentry>
277
</variablelist></refsect2>
279
<title><anchor id="mg-resultset-check-data-model"/>mg_resultset_check_data_model ()</title>
280
<indexterm><primary>mg_resultset_check_data_model</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> mg_resultset_check_data_model (<link linkend="GdaDataModel">GdaDataModel</link> *model,
281
<link linkend="gint">gint</link> nbcols,
282
...);</programlisting>
284
Check the column types of a GdaDataModel.</para>
287
</para><variablelist role="params">
288
<varlistentry><term><parameter>model</parameter> :</term>
289
<listitem><simpara> a <link linkend="GdaDataModel"><type>GdaDataModel</type></link> object
290
</simpara></listitem></varlistentry>
291
<varlistentry><term><parameter>nbcols</parameter> :</term>
292
<listitem><simpara> the requested number of columns
293
</simpara></listitem></varlistentry>
294
<varlistentry><term><parameter>...</parameter> :</term>
295
<listitem><simpara> <parameter>nbcols</parameter> arguments of type GdaValueType or -1 (if any data type is accepted)
296
</simpara></listitem></varlistentry>
297
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE if the data model's columns match the provided data types and number
298
</simpara></listitem></varlistentry>
299
</variablelist></refsect2>
301
<title><anchor id="mg-resultset-get-row-as-string"/>mg_resultset_get_row_as_string ()</title>
302
<indexterm><primary>mg_resultset_get_row_as_string</primary></indexterm><programlisting><link linkend="gchar">gchar</link>* mg_resultset_get_row_as_string (<link linkend="MgResultSet">MgResultSet</link> *rs,
303
<link linkend="MgQuery">MgQuery</link> *query,
304
<link linkend="gint">gint</link> row,
305
<link linkend="gchar">gchar</link> *sep);</programlisting>
307
Creates a string representing, for the specified <parameter>row</parameter>, the visible fields <parameter>query</parameter>,
308
separated by <parameter>sep</parameter>. <parameter>query</parameter> is usually the query which has been used to create the
312
</para><variablelist role="params">
313
<varlistentry><term><parameter>rs</parameter> :</term>
314
<listitem><simpara> a <link linkend="MgResultSet"><type>MgResultSet</type></link> object
315
</simpara></listitem></varlistentry>
316
<varlistentry><term><parameter>query</parameter> :</term>
317
<listitem><simpara> a <link linkend="MgQuery"><type>MgQuery</type></link> object
318
</simpara></listitem></varlistentry>
319
<varlistentry><term><parameter>row</parameter> :</term>
321
</simpara></listitem></varlistentry>
322
<varlistentry><term><parameter>sep</parameter> :</term>
324
</simpara></listitem></varlistentry>
325
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a new string, or <literal>NULL</literal> if an error occured.
326
</simpara></listitem></varlistentry>
327
</variablelist></refsect2>
331
<title>Properties</title>
333
<varlistentry><term><anchor id="MgResultSet--prop"/>"<literal>prop</literal>" (<link linkend="gpointer">gpointer</link> : Read / Write)</term>
336
</listitem></varlistentry>
342
<title>Signals</title>
343
<refsect2><title><anchor id="MgResultSet-dummy"/>The "dummy" signal</title>
344
<programlisting><link linkend="void">void</link> user_function (<link linkend="MgResultSet">MgResultSet</link> *mgresultset,
345
<link linkend="gpointer">gpointer</link> user_data);</programlisting>
348
</para><variablelist role="params">
349
<varlistentry><term><parameter>mgresultset</parameter> :</term>
350
<listitem><simpara>the object which received the signal.
352
</simpara></listitem></varlistentry>
353
<varlistentry><term><parameter>user_data</parameter> :</term>
354
<listitem><simpara>user data set when the signal handler was connected.</simpara></listitem></varlistentry>
355
</variablelist></refsect2>