|
Lines 2-8
Link Here
|
| 2 |
|
2 |
|
| 3 |
<!ENTITY LIBGDA "<application>libgda</application>"> |
3 |
<!ENTITY LIBGDA "<application>libgda</application>"> |
| 4 |
<!ENTITY GNOMEDB "<application>GNOME-DB</application>"> |
4 |
<!ENTITY GNOMEDB "<application>GNOME-DB</application>"> |
| 5 |
<!ENTITY igalia '<ulink url="http://www.igalia.com">Igalia, S.L.</ulink>'> |
5 |
<!ENTITY igalia '<emphasis><ulink url="http://www.igalia.com">Igalia, S.L.</ulink></emphasis>'> |
| 6 |
<!ENTITY API "<acronym>API</acronym>"> |
6 |
<!ENTITY API "<acronym>API</acronym>"> |
| 7 |
<!ENTITY DBMS "<acronym>DBMS</acronym>"> |
7 |
<!ENTITY DBMS "<acronym>DBMS</acronym>"> |
| 8 |
<!ENTITY DSN "<acronym>DSN</acronym>"> |
8 |
<!ENTITY DSN "<acronym>DSN</acronym>"> |
|
Lines 28-34
Link Here
|
| 28 |
<!ENTITY GDADATAMODELHASH "<xref linkend='libgda-GdaDataModelHash'>"> |
28 |
<!ENTITY GDADATAMODELHASH "<xref linkend='libgda-GdaDataModelHash'>"> |
| 29 |
<!ENTITY fullexample SYSTEM "examples/full_example.c" CDATA linespecific> |
29 |
<!ENTITY fullexample SYSTEM "examples/full_example.c" CDATA linespecific> |
| 30 |
<!ENTITY migration.sgml SYSTEM "migration.sgml"> |
30 |
<!ENTITY migration.sgml SYSTEM "migration.sgml"> |
| 31 |
<!ENTITY libgda-batch SYSTEM "sgml/gda-batch.sgml"> |
|
|
| 32 |
<!ENTITY libgda-blob SYSTEM "sgml/gda-blob.sgml"> |
31 |
<!ENTITY libgda-blob SYSTEM "sgml/gda-blob.sgml"> |
| 33 |
<!ENTITY libgda-client SYSTEM "sgml/gda-client.sgml"> |
32 |
<!ENTITY libgda-client SYSTEM "sgml/gda-client.sgml"> |
| 34 |
<!ENTITY libgda-command SYSTEM "sgml/gda-command.sgml"> |
33 |
<!ENTITY libgda-command SYSTEM "sgml/gda-command.sgml"> |
|
Lines 391-413
Link Here
|
| 391 |
will need to install a few packages in the following way: |
390 |
will need to install a few packages in the following way: |
| 392 |
</para> |
391 |
</para> |
| 393 |
<PROGRAMLISTING> |
392 |
<PROGRAMLISTING> |
| 394 |
<SYSTEMITEM CLASS="prompt">$</SYSTEMITEM> <USERINPUT> apt-get install <EMPHASIS>package-names</EMPHASIS></USERINPUT> |
393 |
<SYSTEMITEM CLASS="prompt">$</SYSTEMITEM> <USERINPUT> apt-get install <REPLACEABLE>package-names</REPLACEABLE></USERINPUT> |
| 395 |
</PROGRAMLISTING> |
394 |
</PROGRAMLISTING> |
| 396 |
<para> |
395 |
<para> |
| 397 |
These are the packages you will need for this: |
396 |
These are the packages you will need for this: |
| 398 |
</para> |
397 |
</para> |
| 399 |
<ITEMIZEDLIST> |
398 |
<ITEMIZEDLIST> |
| 400 |
<LISTITEM>libgda2-1</LISTITEM> |
399 |
<LISTITEM><para>libgda2-1</para></LISTITEM> |
| 401 |
<LISTITEM>libgda2-common</LISTITEM> |
400 |
<LISTITEM><para>libgda2-common</para></LISTITEM> |
| 402 |
<LISTITEM>libgda2-dev</LISTITEM> |
401 |
<LISTITEM><para>libgda2-dev</para></LISTITEM> |
| 403 |
<LISTITEM>libgda2-doc</LISTITEM> |
402 |
<LISTITEM><para>libgda2-doc</para></LISTITEM> |
| 404 |
<LISTITEM>libgda2-dbg</LISTITEM> |
403 |
<LISTITEM><para>libgda2-dbg</para></LISTITEM> |
| 405 |
</ITEMIZEDLIST> |
404 |
</ITEMIZEDLIST> |
| 406 |
<para> |
405 |
<para> |
| 407 |
You can obtain information about any packages with: |
406 |
You can obtain information about any packages with: |
| 408 |
</para> |
407 |
</para> |
| 409 |
<PROGRAMLISTING> |
408 |
<PROGRAMLISTING> |
| 410 |
<SYSTEMITEM CLASS="prompt">$</SYSTEMITEM> <USERINPUT> apt-cache show <EMPHASIS>package-names</EMPHASIS></USERINPUT> |
409 |
<SYSTEMITEM CLASS="prompt">$</SYSTEMITEM> <USERINPUT> apt-cache show <replaceable>package-names</replaceable></USERINPUT> |
| 411 |
</PROGRAMLISTING> |
410 |
</PROGRAMLISTING> |
| 412 |
<para> |
411 |
<para> |
| 413 |
If you cannot find this packages, you must include in |
412 |
If you cannot find this packages, you must include in |
|
Lines 637-644
Link Here
|
| 637 |
<LINK LINKEND="installation-provider">providers specific information</LINK>. |
636 |
<LINK LINKEND="installation-provider">providers specific information</LINK>. |
| 638 |
</para> |
637 |
</para> |
| 639 |
<para> |
638 |
<para> |
| 640 |
There was a little bug<footnote>It can be fixed, but it |
639 |
There was a little bug<footnote><para>It can be fixed, but it |
| 641 |
is better not to run the risk of it.</footnote>, and it |
640 |
is better not to run the risk of it.</para></footnote>, and it |
| 642 |
is that <LINK |
641 |
is that <LINK |
| 643 |
LINKEND="gda-config-save-data-source">gda_config_save_data_source()</LINK> |
642 |
LINKEND="gda-config-save-data-source">gda_config_save_data_source()</LINK> |
| 644 |
does not create the configuration directory <filename |
643 |
does not create the configuration directory <filename |
|
Lines 1141-1147
Link Here
|
| 1141 |
<para> |
1140 |
<para> |
| 1142 |
The command type we most commonly use is <LINK |
1141 |
The command type we most commonly use is <LINK |
| 1143 |
LINKEND="GdaCommandType">GDA_COMMAND_TYPE_SQL</LINK> because we will only |
1142 |
LINKEND="GdaCommandType">GDA_COMMAND_TYPE_SQL</LINK> because we will only |
| 1144 |
focus on &SQL; queries<footnote>There are other command types, as &XML; and so on. |
1143 |
focus on &SQL; queries<footnote><para>There are other command types, as &XML; and so on.</para> |
| 1145 |
</footnote> |
1144 |
</footnote> |
| 1146 |
</para> |
1145 |
</para> |
| 1147 |
<PROGRAMLISTINGCO> |
1146 |
<PROGRAMLISTINGCO> |
|
Lines 1244-1256
Link Here
|
| 1244 |
LINKEND="data-model">data models</LINK>). You have two ways to do this: |
1243 |
LINKEND="data-model">data models</LINK>). You have two ways to do this: |
| 1245 |
</para> |
1244 |
</para> |
| 1246 |
<ITEMIZEDLIST> |
1245 |
<ITEMIZEDLIST> |
| 1247 |
<LISTITEM> |
1246 |
<LISTITEM><para> |
| 1248 |
<LINK LINKEND="gda-connection-execute-single-command"> |
1247 |
<LINK LINKEND="gda-connection-execute-single-command"> |
| 1249 |
gda_data_model_execute_single_command()</LINK> |
1248 |
gda_data_model_execute_single_command()</LINK></para> |
| 1250 |
</LISTITEM> |
1249 |
</LISTITEM> |
| 1251 |
<LISTITEM> |
1250 |
<LISTITEM><para> |
| 1252 |
<LINK LINKEND="gda-connection-execute-command"> |
1251 |
<LINK LINKEND="gda-connection-execute-command"> |
| 1253 |
gda_data_model_execute_command()</LINK> |
1252 |
gda_data_model_execute_command()</LINK></para> |
| 1254 |
</LISTITEM> |
1253 |
</LISTITEM> |
| 1255 |
</ITEMIZEDLIST> |
1254 |
</ITEMIZEDLIST> |
| 1256 |
<para> |
1255 |
<para> |
|
Lines 1340-1368
Link Here
|
| 1340 |
Let's see the functions we need: |
1339 |
Let's see the functions we need: |
| 1341 |
</para> |
1340 |
</para> |
| 1342 |
<ITEMIZEDLIST> |
1341 |
<ITEMIZEDLIST> |
| 1343 |
<LISTITEM> |
1342 |
<LISTITEM><para> |
| 1344 |
<LINK LINKEND="gda-data-model-get-n-rows">gda_data_model_get_n_rows()</LINK> |
1343 |
<LINK LINKEND="gda-data-model-get-n-rows">gda_data_model_get_n_rows()</LINK></para> |
| 1345 |
</LISTITEM> |
1344 |
</LISTITEM> |
| 1346 |
<LISTITEM> |
1345 |
<LISTITEM><para> |
| 1347 |
<LINK LINKEND="gda-data-model-get-n-columns">gda_data_model_get_n_columns()</LINK> |
1346 |
<LINK LINKEND="gda-data-model-get-n-columns">gda_data_model_get_n_columns()</LINK></para> |
| 1348 |
</LISTITEM> |
1347 |
</LISTITEM> |
| 1349 |
<LISTITEM> |
1348 |
<LISTITEM><para> |
| 1350 |
<LINK LINKEND="gda-data-model-describe-column">gda_data_model_describe_column()</LINK> |
1349 |
<LINK LINKEND="gda-data-model-describe-column">gda_data_model_describe_column()</LINK></para> |
| 1351 |
</LISTITEM> |
1350 |
</LISTITEM> |
| 1352 |
<LISTITEM> |
1351 |
<LISTITEM><para> |
| 1353 |
<LINK LINKEND="gda-data-model-get-column-title">gda_data_model_get_column_title()</LINK> |
1352 |
<LINK LINKEND="gda-data-model-get-column-title">gda_data_model_get_column_title()</LINK></para> |
| 1354 |
</LISTITEM> |
1353 |
</LISTITEM> |
| 1355 |
<LISTITEM> |
1354 |
<LISTITEM><para> |
| 1356 |
<LINK LINKEND="gda-data-model-get-column-position">gda_data_model_get_column_position()</LINK> |
1355 |
<LINK LINKEND="gda-data-model-get-column-position">gda_data_model_get_column_position()</LINK></para> |
| 1357 |
</LISTITEM> |
1356 |
</LISTITEM> |
| 1358 |
<LISTITEM> |
1357 |
<LISTITEM><para> |
| 1359 |
<LINK LINKEND="gda-data-model-get-row">gda_data_model_get_row()</LINK> |
1358 |
<LINK LINKEND="gda-data-model-get-row">gda_data_model_get_row()</LINK></para> |
| 1360 |
</LISTITEM> |
1359 |
</LISTITEM> |
| 1361 |
<LISTITEM> |
1360 |
<LISTITEM><para> |
| 1362 |
<LINK LINKEND="gda-data-model-get-value-at">gda_data_model_get_value_at()</LINK> |
1361 |
<LINK LINKEND="gda-data-model-get-value-at">gda_data_model_get_value_at()</LINK></para> |
| 1363 |
</LISTITEM> |
1362 |
</LISTITEM> |
| 1364 |
<LISTITEM> |
1363 |
<LISTITEM><para> |
| 1365 |
<LINK LINKEND="gda-row-get-value">gda_row_get_value()</LINK> |
1364 |
<LINK LINKEND="gda-row-get-value">gda_row_get_value()</LINK></para> |
| 1366 |
</LISTITEM> |
1365 |
</LISTITEM> |
| 1367 |
</ITEMIZEDLIST> |
1366 |
</ITEMIZEDLIST> |
| 1368 |
<para> |
1367 |
<para> |
|
Lines 1514-1520
Link Here
|
| 1514 |
</para> |
1513 |
</para> |
| 1515 |
</sect2> |
1514 |
</sect2> |
| 1516 |
</sect1> |
1515 |
</sect1> |
| 1517 |
<sect1 ID="gdavalue"> |
1516 |
<sect1 ID="manage-gdavalue"> |
| 1518 |
<title>Managing values</title> |
1517 |
<title>Managing values</title> |
| 1519 |
<para> |
1518 |
<para> |
| 1520 |
Values returned by functions of managing data are <LINK |
1519 |
Values returned by functions of managing data are <LINK |
|
Lines 1524-1543
Link Here
|
| 1524 |
of them: |
1523 |
of them: |
| 1525 |
</para> |
1524 |
</para> |
| 1526 |
<ITEMIZEDLIST> |
1525 |
<ITEMIZEDLIST> |
| 1527 |
<LISTITEM> |
1526 |
<LISTITEM><para> |
| 1528 |
<LINK LINKEND="gda-value-free">gda_value_free()</LINK> |
1527 |
<LINK LINKEND="gda-value-free">gda_value_free()</LINK></para> |
| 1529 |
</LISTITEM> |
1528 |
</LISTITEM> |
| 1530 |
<LISTITEM> |
1529 |
<LISTITEM><para> |
| 1531 |
<LINK LINKEND="gda-value-is-null">gda_value_is_null()</LINK> |
1530 |
<LINK LINKEND="gda-value-is-null">gda_value_is_null()</LINK></para> |
| 1532 |
</LISTITEM> |
1531 |
</LISTITEM> |
| 1533 |
<LISTITEM> |
1532 |
<LISTITEM><para> |
| 1534 |
<LINK LINKEND="gda-value-copy">gda_value_copy()</LINK> |
1533 |
<LINK LINKEND="gda-value-copy">gda_value_copy()</LINK></para> |
| 1535 |
</LISTITEM> |
1534 |
</LISTITEM> |
| 1536 |
<LISTITEM> |
1535 |
<LISTITEM><para> |
| 1537 |
<LINK LINKEND="gda-value-compare">gda_value_compare()</LINK> |
1536 |
<LINK LINKEND="gda-value-compare">gda_value_compare()</LINK></para> |
| 1538 |
</LISTITEM> |
1537 |
</LISTITEM> |
| 1539 |
<LISTITEM> |
1538 |
<LISTITEM><para> |
| 1540 |
<LINK LINKEND="gda-value-stringify">gda_value_stringify()</LINK> |
1539 |
<LINK LINKEND="gda-value-stringify">gda_value_stringify()</LINK></para> |
| 1541 |
</LISTITEM> |
1540 |
</LISTITEM> |
| 1542 |
</ITEMIZEDLIST> |
1541 |
</ITEMIZEDLIST> |
| 1543 |
<para> |
1542 |
<para> |
|
Lines 1637-1656
Link Here
|
| 1637 |
classes, and they are: |
1636 |
classes, and they are: |
| 1638 |
</para> |
1637 |
</para> |
| 1639 |
<ITEMIZEDLIST> |
1638 |
<ITEMIZEDLIST> |
| 1640 |
<LISTITEM> |
1639 |
<LISTITEM><para> |
| 1641 |
<LINK LINKEND="gda-transaction-new">gda_transaction_new ()</LINK> |
1640 |
<LINK LINKEND="gda-transaction-new">gda_transaction_new ()</LINK></para> |
| 1642 |
</LISTITEM> |
1641 |
</LISTITEM> |
| 1643 |
<LISTITEM> |
1642 |
<LISTITEM><para> |
| 1644 |
<LINK LINKEND="gda-connection-begin-transaction">gda_connection_begin_transaction ()</LINK> |
1643 |
<LINK LINKEND="gda-connection-begin-transaction">gda_connection_begin_transaction ()</LINK></para> |
| 1645 |
</LISTITEM> |
1644 |
</LISTITEM> |
| 1646 |
<LISTITEM> |
1645 |
<LISTITEM><para> |
| 1647 |
<LINK LINKEND="gda-connection-commit-transaction">gda_connection_commit_transaction ()</LINK> |
1646 |
<LINK LINKEND="gda-connection-commit-transaction">gda_connection_commit_transaction ()</LINK></para> |
| 1648 |
</LISTITEM> |
1647 |
</LISTITEM> |
| 1649 |
<LISTITEM> |
1648 |
<LISTITEM><para> |
| 1650 |
<LINK LINKEND="gda-connection-rollback-transaction">gda_connection_rollback_transaction ()</LINK> |
1649 |
<LINK LINKEND="gda-connection-rollback-transaction">gda_connection_rollback_transaction ()</LINK></para> |
| 1651 |
</LISTITEM> |
1650 |
</LISTITEM> |
| 1652 |
<LISTITEM> |
1651 |
<LISTITEM><para> |
| 1653 |
<LINK LINKEND="gda-command-set-transaction">gda_command_set_transaction ()</LINK> |
1652 |
<LINK LINKEND="gda-command-set-transaction">gda_command_set_transaction ()</LINK></para> |
| 1654 |
</LISTITEM> |
1653 |
</LISTITEM> |
| 1655 |
</ITEMIZEDLIST> |
1654 |
</ITEMIZEDLIST> |
| 1656 |
<para> |
1655 |
<para> |
|
Lines 1809-1825
Link Here
|
| 1809 |
Here you see the functions to manage errors: |
1808 |
Here you see the functions to manage errors: |
| 1810 |
</para> |
1809 |
</para> |
| 1811 |
<ITEMIZEDLIST> |
1810 |
<ITEMIZEDLIST> |
| 1812 |
<LISTITEM> |
1811 |
<LISTITEM><para> |
| 1813 |
<LINK LINKEND="gda-error-get-description">gda_error_get_description()</LINK> |
1812 |
<LINK LINKEND="gda-error-get-description">gda_error_get_description()</LINK></para> |
| 1814 |
</LISTITEM> |
1813 |
</LISTITEM> |
| 1815 |
<LISTITEM> |
1814 |
<LISTITEM><para> |
| 1816 |
<LINK LINKEND="gda-error-get-number">gda_error_get_number()</LINK> |
1815 |
<LINK LINKEND="gda-error-get-number">gda_error_get_number()</LINK></para> |
| 1817 |
</LISTITEM> |
1816 |
</LISTITEM> |
| 1818 |
<LISTITEM> |
1817 |
<LISTITEM><para> |
| 1819 |
<LINK LINKEND="gda-error-get-source">gda_error_get_source()</LINK> |
1818 |
<LINK LINKEND="gda-error-get-source">gda_error_get_source()</LINK></para> |
| 1820 |
</LISTITEM> |
1819 |
</LISTITEM> |
| 1821 |
<LISTITEM> |
1820 |
<LISTITEM><para> |
| 1822 |
<LINK LINKEND="gda-error-get-sqlstate">gda_error_get_sqlstate()</LINK> |
1821 |
<LINK LINKEND="gda-error-get-sqlstate">gda_error_get_sqlstate()</LINK></para> |
| 1823 |
</LISTITEM> |
1822 |
</LISTITEM> |
| 1824 |
</ITEMIZEDLIST> |
1823 |
</ITEMIZEDLIST> |
| 1825 |
<para> |
1824 |
<para> |
|
Lines 1920-1928
Link Here
|
| 1920 |
<para> |
1919 |
<para> |
| 1921 |
There is no problem about calling several times to this |
1920 |
There is no problem about calling several times to this |
| 1922 |
function because if you save an existing data source, it |
1921 |
function because if you save an existing data source, it |
| 1923 |
is replaced, so it could be advisable<footnote>But you must think |
1922 |
is replaced, so it could be advisable<footnote><para>But you must think |
| 1924 |
of security if you distribute the source code because people would see |
1923 |
of security if you distribute the source code because people would see |
| 1925 |
the passwords of your databases.</footnote> to save the data source |
1924 |
the passwords of your databases.</para></footnote> to save the data source |
| 1926 |
each time you want to create the connection. |
1925 |
each time you want to create the connection. |
| 1927 |
</para> |
1926 |
</para> |
| 1928 |
</sect2> |
1927 |
</sect2> |
|
Lines 1971-1979
Link Here
|
| 1971 |
A normal query is a query that return data. This is made as a |
1970 |
A normal query is a query that return data. This is made as a |
| 1972 |
<LINK LINKEND="libgda-GdaDataModel">data model</LINK>, analogous |
1971 |
<LINK LINKEND="libgda-GdaDataModel">data model</LINK>, analogous |
| 1973 |
to <EMPHASIS>GdaRecordset</EMPHASIS> in the old |
1972 |
to <EMPHASIS>GdaRecordset</EMPHASIS> in the old |
| 1974 |
version<footnote>Now you have a <LINK |
1973 |
version<footnote><para>Now you have a <LINK |
| 1975 |
LINKEND="libgda-provider-recordset">GdaRecordset</LINK> class, |
1974 |
LINKEND="libgda-provider-recordset">GdaRecordset</LINK> class, |
| 1976 |
but it is not recommended.</footnote>. |
1975 |
but it is not recommended.</para></footnote>. |
| 1977 |
</para> |
1976 |
</para> |
| 1978 |
<para> |
1977 |
<para> |
| 1979 |
As you can see in the following example, the function we use to |
1978 |
As you can see in the following example, the function we use to |
|
Lines 1987-1997
Link Here
|
| 1987 |
</para> |
1986 |
</para> |
| 1988 |
<para> |
1987 |
<para> |
| 1989 |
As in the case of <LINK |
1988 |
As in the case of <LINK |
| 1990 |
INKEND="gda-connection-execute-non-query">non queries</LINK>, you |
1989 |
LINKEND="gda-connection-execute-non-query">non queries</LINK>, you |
| 1991 |
must not use several semicolon-separated sentences, because you |
1990 |
must not use several semicolon-separated sentences, because you |
| 1992 |
have a special function to do this<footnote><LINK |
1991 |
have a special function to do this<footnote><para><LINK |
| 1993 |
LINKEND="gda-connection-execute-command">gda_connection_execute_command |
1992 |
LINKEND="gda-connection-execute-command">gda_connection_execute_command |
| 1994 |
()</LINK></footnote>, but it is not recommended. |
1993 |
()</LINK></para></footnote>, but it is not recommended. |
| 1995 |
</para> |
1994 |
</para> |
| 1996 |
</sect2> |
1995 |
</sect2> |
| 1997 |
</sect1> |
1996 |
</sect1> |
|
Lines 2037-2042
Link Here
|
| 2037 |
changes using &SQL;, so we consider data models not to be |
2036 |
changes using &SQL;, so we consider data models not to be |
| 2038 |
modifiable. |
2037 |
modifiable. |
| 2039 |
</para> |
2038 |
</para> |
|
|
2039 |
</sect2> |
| 2040 |
<sect2> |
2040 |
<sect2> |
| 2041 |
<title>Accessing directly to columns</title> |
2041 |
<title>Accessing directly to columns</title> |
| 2042 |
<para> |
2042 |
<para> |
|
Lines 2080-2086
Link Here
|
| 2080 |
The following sections describe the API available for &GDA; applications. |
2080 |
The following sections describe the API available for &GDA; applications. |
| 2081 |
</para> |
2081 |
</para> |
| 2082 |
&libgda-init; |
2082 |
&libgda-init; |
| 2083 |
&libgda-batch; |
|
|
| 2084 |
&libgda-blob; |
2083 |
&libgda-blob; |
| 2085 |
&libgda-client; |
2084 |
&libgda-client; |
| 2086 |
&libgda-command; |
2085 |
&libgda-command; |
|
Lines 2268-2274
Link Here
|
| 2268 |
<entry>Tables</entry> |
2267 |
<entry>Tables</entry> |
| 2269 |
<entry><parameter>GDA_CONNECTION_SCHEMA_TABLES</parameter></entry> |
2268 |
<entry><parameter>GDA_CONNECTION_SCHEMA_TABLES</parameter></entry> |
| 2270 |
<entry>"name" (name of table, optional)</entry> |
2269 |
<entry>"name" (name of table, optional)</entry> |
| 2271 |
<entry>name, owner, comments, SQL definition |
2270 |
<entry>name, owner, comments, SQL definition</entry> |
| 2272 |
</row> |
2271 |
</row> |
| 2273 |
<row> |
2272 |
<row> |
| 2274 |
<entry>Tables' parents</entry> |
2273 |
<entry>Tables' parents</entry> |
|
Lines 2355-2361
Link Here
|
| 2355 |
<para>describe_column</para> |
2354 |
<para>describe_column</para> |
| 2356 |
<para> |
2355 |
<para> |
| 2357 |
Returns information about a given column, in the form of |
2356 |
Returns information about a given column, in the form of |
| 2358 |
a <xref linkend="GdaFieldAttributes">GdaFieldAttributes</xref>. |
2357 |
a <link linkend="GdaFieldAttributes">GdaFieldAttributes</link>. |
| 2359 |
</para> |
2358 |
</para> |
| 2360 |
</listitem> |
2359 |
</listitem> |
| 2361 |
<listitem> |
2360 |
<listitem> |
|
Lines 2363-2372
Link Here
|
| 2363 |
<para> |
2362 |
<para> |
| 2364 |
Retrieves a row from the data model. This function is very important |
2363 |
Retrieves a row from the data model. This function is very important |
| 2365 |
for the implementation of editable data models. What this function |
2364 |
for the implementation of editable data models. What this function |
| 2366 |
returns is a <xref linkend"GdaRow">GdaRow</xref>, which providers |
2365 |
returns is a <link linkend="GdaRow">GdaRow</link>, which providers |
| 2367 |
should uniquely identify (via <xref linkend="gda-row-set-id">gda_row_set_id</xref>). |
2366 |
should uniquely identify (via <link linkend="gda-row-set-id">gda_row_set_id</link>). |
| 2368 |
This is needed so that later on, client applications can use the same |
2367 |
This is needed so that later on, client applications can use the same |
| 2369 |
<xref linkend="GdaRow">GdaRow</xref> returned by this method in |
2368 |
<link linkend="GdaRow">GdaRow</link> returned by this method in |
| 2370 |
the <function>update_row</function> and <function>remove_row</function> |
2369 |
the <function>update_row</function> and <function>remove_row</function> |
| 2371 |
methods. |
2370 |
methods. |
| 2372 |
</para> |
2371 |
</para> |
|
Lines 2387-2395
Link Here
|
| 2387 |
</para> |
2386 |
</para> |
| 2388 |
<para> |
2387 |
<para> |
| 2389 |
Before a data model can be edited, client applications must call the |
2388 |
Before a data model can be edited, client applications must call the |
| 2390 |
<xref linkend="gda-data-model-begin-edit">gda_data_model_begin_edit</xref> |
2389 |
<link linkend="gda-data-model-begin-edit">gda_data_model_begin_edit</link> |
| 2391 |
function, which emits the "begin_edit" signal on the |
2390 |
function, which emits the "begin_edit" signal on the |
| 2392 |
<xref linkend="GdaDataModel">GdaDataModel</xref> class. So, providers |
2391 |
<link linkend="GdaDataModel">GdaDataModel</link> class. So, providers |
| 2393 |
should connect to this signal to be informed when the data model |
2392 |
should connect to this signal to be informed when the data model |
| 2394 |
starts being editing. In the callback connected to that signal, |
2393 |
starts being editing. In the callback connected to that signal, |
| 2395 |
it should start a transaction, for instance. |
2394 |
it should start a transaction, for instance. |
|
Lines 2430-2436
Link Here
|
| 2430 |
</listitem> |
2429 |
</listitem> |
| 2431 |
</itemizedlist> |
2430 |
</itemizedlist> |
| 2432 |
</sect1> |
2431 |
</sect1> |
| 2433 |
&libgda-server-provider; |
2432 |
<sect1 id="libgda-server-provider-details"> |
|
|
2433 |
<title>Details</title> |
| 2434 |
&libgda-server-provider; |
| 2435 |
</sect1> |
| 2434 |
</chapter> |
2436 |
</chapter> |
| 2435 |
|
2437 |
|
| 2436 |
<chapter id="libgda-xql"> |
2438 |
<chapter id="libgda-xql"> |