<!-- ##### SECTION Title ##### -->
Commands

<!-- ##### SECTION Short_Description ##### -->
Issuing commands to the provider

<!-- ##### SECTION Long_Description ##### -->
<para>
  The #GdaCommand structure holds data needed to issue a command to the
  providers.
  Applications usually create a #GdaCommand (via #gda_command_new), set its
  properties (via the gda_command_set_* functions) and pass it over to the
  database using the #GdaConnection functions.
</para>
<para>
  One interesting thing about #GdaCommand's is that they can be reused over
  and over. That is, applications don't need to create a command every time
  they want to run something on the connected database. Moreover, the ability
  to create command strings with placeholders allows the use of parameters to
  specify the values for those placeholders. Thus, an application can create a
  command of the form:
  <programlisting>
    INSERT INTO employees VALUES (%id, %name, %address, %salary)
  </programlisting>
  and reuse the same command over and over, just using different values for the
  placeholders.
</para>
<para>
  The value for the placeholders is specified when sending the #GdaCommand to a
  database connection, which is done via the #gda_connection_execute function.
</para>

<!-- ##### SECTION See_Also ##### -->
<para>

</para>

<!-- ##### SECTION Stability_Level ##### -->


<!-- ##### ENUM GdaCommandOptions ##### -->
<para>
And OR'ed combination of GDA_COMMAND_OPTIONS_* values.

</para>

@GDA_COMMAND_OPTION_IGNORE_ERRORS: 
@GDA_COMMAND_OPTION_STOP_ON_ERRORS: 
@GDA_COMMAND_OPTION_BAD_OPTION: 

<!-- ##### ENUM GdaCommandType ##### -->
<para>

</para>

@GDA_COMMAND_TYPE_SQL: the text of the command is composed of zero or more SQL
sentences.
@GDA_COMMAND_TYPE_XML: 
@GDA_COMMAND_TYPE_PROCEDURE: 
@GDA_COMMAND_TYPE_TABLE: the text of the command is composed of zero or more
table names.
@GDA_COMMAND_TYPE_SCHEMA: 
@GDA_COMMAND_TYPE_INVALID: 

<!-- ##### STRUCT GdaCommand ##### -->
<para>

</para>

@text: 
@type: 
@options: 
@xaction: 

<!-- ##### FUNCTION gda_command_new ##### -->
<para>

</para>

@text: 
@type: 
@options: 
@Returns: 
<!-- # Unused Parameters # -->
@option: 


<!-- ##### FUNCTION gda_command_free ##### -->
<para>

</para>

@cmd: 


<!-- ##### FUNCTION gda_command_copy ##### -->
<para>

</para>

@cmd: 
@Returns: 


<!-- ##### FUNCTION gda_command_get_text ##### -->
<para>

</para>

@cmd: 
@Returns: 


<!-- ##### FUNCTION gda_command_set_text ##### -->
<para>

</para>

@cmd: 
@text: 


<!-- ##### FUNCTION gda_command_get_command_type ##### -->
<para>

</para>

@cmd: 
@Returns: 


<!-- ##### FUNCTION gda_command_set_command_type ##### -->
<para>

</para>

@cmd: 
@type: 


<!-- ##### FUNCTION gda_command_get_options ##### -->
<para>

</para>

@cmd: 
@Returns: 


<!-- ##### FUNCTION gda_command_set_options ##### -->
<para>

</para>

@cmd: 
@options: 


<!-- ##### FUNCTION gda_command_get_transaction ##### -->
<para>

</para>

@cmd: 
@Returns: 


<!-- ##### FUNCTION gda_command_set_transaction ##### -->
<para>

</para>

@cmd: 
@xaction: 


