gda-statement-struct-parts

gda-statement-struct-parts

Functions

GdaSqlExpr * gda_sql_expr_new ()
void gda_sql_expr_free ()
GdaSqlExpr * gda_sql_expr_copy ()
gchar * gda_sql_expr_serialize ()
void gda_sql_expr_take_select ()
GdaSqlField * gda_sql_field_new ()
void gda_sql_field_free ()
GdaSqlField * gda_sql_field_copy ()
gchar * gda_sql_field_serialize ()
void gda_sql_field_take_name ()
GdaSqlTable * gda_sql_table_new ()
void gda_sql_table_free ()
GdaSqlTable * gda_sql_table_copy ()
gchar * gda_sql_table_serialize ()
void gda_sql_table_take_name ()
GdaSqlFunction * gda_sql_function_new ()
void gda_sql_function_free ()
GdaSqlFunction * gda_sql_function_copy ()
gchar * gda_sql_function_serialize ()
void gda_sql_function_check_clean ()
void gda_sql_function_take_name ()
void gda_sql_function_take_args_list ()
GdaSqlOperation * gda_sql_operation_new ()
void gda_sql_operation_free ()
GdaSqlOperation * gda_sql_operation_copy ()
gchar * gda_sql_operation_serialize ()
const gchar * gda_sql_operation_operator_to_string ()
GdaSqlOperatorType gda_sql_operation_operator_from_string ()
GdaSqlCase * gda_sql_case_new ()
void gda_sql_case_free ()
GdaSqlCase * gda_sql_case_copy ()
gchar * gda_sql_case_serialize ()
GdaSqlSelectField * gda_sql_select_field_new ()
void gda_sql_select_field_free ()
GdaSqlSelectField * gda_sql_select_field_copy ()
gchar * gda_sql_select_field_serialize ()
void gda_sql_select_field_take_star_value ()
void gda_sql_select_field_take_expr ()
void gda_sql_select_field_take_alias ()
GdaSqlSelectTarget * gda_sql_select_target_new ()
void gda_sql_select_target_free ()
GdaSqlSelectTarget * gda_sql_select_target_copy ()
gchar * gda_sql_select_target_serialize ()
void gda_sql_select_target_take_table_name ()
void gda_sql_select_target_take_select ()
void gda_sql_select_target_take_alias ()
GdaSqlSelectJoin * gda_sql_select_join_new ()
void gda_sql_select_join_free ()
GdaSqlSelectJoin * gda_sql_select_join_copy ()
gchar * gda_sql_select_join_serialize ()
const gchar * gda_sql_select_join_type_to_string ()
GdaSqlSelectFrom * gda_sql_select_from_new ()
void gda_sql_select_from_free ()
GdaSqlSelectFrom * gda_sql_select_from_copy ()
gchar * gda_sql_select_from_serialize ()
void gda_sql_select_from_take_new_target ()
void gda_sql_select_from_take_new_join ()
GdaSqlSelectOrder * gda_sql_select_order_new ()
void gda_sql_select_order_free ()
GdaSqlSelectOrder * gda_sql_select_order_copy ()
gchar * gda_sql_select_order_serialize ()

Object Hierarchy

    GBoxed
    ├── GdaSqlCase
    ├── GdaSqlExpr
    ├── GdaSqlField
    ├── GdaSqlFunction
    ├── GdaSqlOperation
    ├── GdaSqlSelectField
    ├── GdaSqlSelectFrom
    ├── GdaSqlSelectJoin
    ├── GdaSqlSelectOrder
    ├── GdaSqlSelectTarget
    ╰── GdaSqlTable
    GEnum
    ├── GdaSqlOperatorType
    ╰── GdaSqlSelectJoinType

Description

Functions

gda_sql_expr_new ()

GdaSqlExpr *
gda_sql_expr_new (GdaSqlAnyPart *parent);

Creates a new GdaSqlField structure, using parent as its parent part.

Returns

a new GdaSqlField structure.


gda_sql_expr_free ()

void
gda_sql_expr_free (GdaSqlExpr *expr);

Frees a GdaSqlExpr structure and its members.

Parameters

expr

a GdaSqlExpr to be freed.

 

gda_sql_expr_copy ()

GdaSqlExpr *
gda_sql_expr_copy (GdaSqlExpr *expr);

Creates a new GdaSqlExpr structure initiated with the values stored in expr .

Parameters

expr

a GdaSqlExpr

 

Returns

a new GdaSqlExpr structure.


gda_sql_expr_serialize ()

gchar *
gda_sql_expr_serialize (GdaSqlExpr *expr);

Creates a new string representation of the SQL expression. You need to free the returned string using g_free();

Parameters

expr

a GdaSqlExpr structure

 

Returns

a new string with the SQL expression or "null" in case expr is invalid.


gda_sql_expr_take_select ()

void
gda_sql_expr_take_select (GdaSqlExpr *expr,
                          GdaSqlStatement *stmt);

Sets the expression's parent to the GdaSqlStatementSelect held by stmt . After calling this function stmt is freed.

Parameters

expr

a GdaSqlExpr structure

 

stmt

a GdaSqlStatement holding the GdaSqlStatementSelect to take from

 

gda_sql_field_new ()

GdaSqlField *
gda_sql_field_new (GdaSqlAnyPart *parent);

Creates a new GdaSqlField structure, using parent as its parent part.

Returns

a new GdaSqlField structure.


gda_sql_field_free ()

void
gda_sql_field_free (GdaSqlField *field);

Frees a GdaSqlField structure and its members.

Parameters

field

a GdaSqlField to be freed.

 

gda_sql_field_copy ()

GdaSqlField *
gda_sql_field_copy (GdaSqlField *field);

Creates a new GdaSqlField structure initiated with the values stored in field .

Parameters

field

a GdaSqlAnyPart

 

Returns

a new GdaSqlField structure.


gda_sql_field_serialize ()

gchar *
gda_sql_field_serialize (GdaSqlField *field);

Creates a new string representing a field. You need to free the returned string using g_free();

Parameters

field

a GdaSqlField structure

 

Returns

a new string with the name of the field or "null" in case field is invalid.


gda_sql_field_take_name ()

void
gda_sql_field_take_name (GdaSqlField *field,
                         GValue *value);

Sets the field's name using the string held by value . When call, value is freed using gda_value_free().

Parameters

field

a GdaSqlField structure

 

value

a GValue holding a string to take from

 

gda_sql_table_new ()

GdaSqlTable *
gda_sql_table_new (GdaSqlAnyPart *parent);

Creates a new GdaSqlTable structure, using parent as its parent part.

Returns

a new GdaSqlTable structure.


gda_sql_table_free ()

void
gda_sql_table_free (GdaSqlTable *table);

Frees a GdaSqlTable structure and its members.

Parameters

table

a GdaSqlTable structure to be freed

 

gda_sql_table_copy ()

GdaSqlTable *
gda_sql_table_copy (GdaSqlTable *table);

Creates a new GdaSqlTable structure initiated with the values stored in table .

Parameters

table

a GdaSqlTable structure to be copied

 

Returns

a new GdaSqlTable structure.

[transfer full]


gda_sql_table_serialize ()

gchar *
gda_sql_table_serialize (GdaSqlTable *table);

Creates a new string representing a table. You need to free the returned string using g_free();

Parameters

table

a GdaSqlTable structure

 

Returns

a new string with the name of the field or "null" in case table is invalid.

[transfer full]


gda_sql_table_take_name ()

void
gda_sql_table_take_name (GdaSqlTable *table,
                         GValue *value);

Sets the table's name using the string held by value . When call, value is freed using gda_value_free().

Parameters

table

a GdaSqlTable structure

 

value

a GValue holding a string to take from

 

gda_sql_function_new ()

GdaSqlFunction *
gda_sql_function_new (GdaSqlAnyPart *parent);

Creates a new GdaSqlFunction structure initiated.

Parameters

parent

a GdaSqlAnyPart structure

 

Returns

a new GdaSqlFunction structure.


gda_sql_function_free ()

void
gda_sql_function_free (GdaSqlFunction *function);

Frees a GdaSqlFunction structure and its members.

Parameters

function

a GdaSqlFunction structure to be freed

 

gda_sql_function_copy ()

GdaSqlFunction *
gda_sql_function_copy (GdaSqlFunction *function);

Creates a new GdaSqlFunction structure initiated with the values stored in function .

Parameters

function

a GdaSqlFunction structure to be copied

 

Returns

a new GdaSqlFunction structure.

[transfer full]


gda_sql_function_serialize ()

gchar *
gda_sql_function_serialize (GdaSqlFunction *function);

Creates a new string representing a function. You need to free the returned string using g_free();

Parameters

function

a GdaSqlFunction structure

 

Returns

a new string with the description of the function or "null" in case function is invalid.


gda_sql_function_check_clean ()

void
gda_sql_function_check_clean (GdaSqlFunction *function);

gda_sql_function_take_name ()

void
gda_sql_function_take_name (GdaSqlFunction *function,
                            GValue *value);

Sets the function's name using the string held by value . When call, value is freed using gda_value_free().

Parameters

function

a GdaSqlFunction structure

 

value

a GValue holding a string to take from

 

gda_sql_function_take_args_list ()

void
gda_sql_function_take_args_list (GdaSqlFunction *function,
                                 GSList *args);

Sets the function's arguments to point to args , then sets the list's data elements' parent to function .

Parameters

function

a GdaSqlFunction structure

 

args

a GSList to take from.

[element-type Gda.SqlExpr]

gda_sql_operation_new ()

GdaSqlOperation *
gda_sql_operation_new (GdaSqlAnyPart *parent);

Creates a new GdaSqlOperation structure and sets its parent to parent .

Parameters

parent

a GdaSqlAnyPart structure

 

Returns

a new GdaSqlOperation structure.


gda_sql_operation_free ()

void
gda_sql_operation_free (GdaSqlOperation *operation);

Frees a GdaSqlOperation structure and its members.

Parameters

operation

a GdaSqlOperation structure to be freed

 

gda_sql_operation_copy ()

GdaSqlOperation *
gda_sql_operation_copy (GdaSqlOperation *operation);

Creates a new GdaSqlOperation structure initiated with the values stored in operation .

Parameters

operation

a GdaSqlOperation structure to be copied

 

Returns

a new GdaSqlOperation structure.


gda_sql_operation_serialize ()

gchar *
gda_sql_operation_serialize (GdaSqlOperation *operation);

Creates a new string representing an operator. You need to free the returned string using g_free();

Parameters

operation

a GdaSqlOperation structure

 

Returns

a new string with the description of the operator or "null" in case operation is invalid.


gda_sql_operation_operator_to_string ()

const gchar *
gda_sql_operation_operator_to_string (GdaSqlOperatorType op);

Returns a constant string representing a operator name. You don't need to free the returned string.

Parameters

op

a GdaSqlOperation structure

 

Returns

a string with the operator's name or NULL in case op is invalid.


gda_sql_operation_operator_from_string ()

GdaSqlOperatorType
gda_sql_operation_operator_from_string
                               (const gchar *op);

Returns GdaSqlOperatorType that correspond with the string op .

Parameters

op

a GdaSqlOperation structure

 

gda_sql_case_new ()

GdaSqlCase *
gda_sql_case_new (GdaSqlAnyPart *parent);

Creates a new GdaSqlCase structure and sets its parent to parent .

Parameters

parent

a GdaSqlAnyPart structure

 

Returns

a new GdaSqlCase structure.


gda_sql_case_free ()

void
gda_sql_case_free (GdaSqlCase *sc);

Frees a GdaSqlCase structure and its members.

Parameters

sc

a GdaSqlCase structure to be freed

 

gda_sql_case_copy ()

GdaSqlCase *
gda_sql_case_copy (GdaSqlCase *sc);

Creates a new GdaSqlCase structure initiated with the values stored in sc .

Parameters

sc

a GdaSqlCase structure to be copied

 

Returns

a new GdaSqlCase structure.


gda_sql_case_serialize ()

gchar *
gda_sql_case_serialize (GdaSqlCase *sc);

Creates a new string representing a CASE clause. You need to free the returned string using g_free();

Parameters

sc

a GdaSqlCase structure

 

Returns

a new string with the description of the CASE clause or "null" in case sc is invalid.


gda_sql_select_field_new ()

GdaSqlSelectField *
gda_sql_select_field_new (GdaSqlAnyPart *parent);

Creates a new GdaSqlSelectField structure and sets its parent to parent . A GdaSqlSelectField is any expression in SELECT statements before the FROM clause.

Parameters

parent

a GdaSqlStatementSelect structure

 

Returns

a new GdaSqlSelectField structure.


gda_sql_select_field_free ()

void
gda_sql_select_field_free (GdaSqlSelectField *field);

Frees a GdaSqlSelectField structure and its members.

Parameters

field

a GdaSqlSelectField structure to be freed

 

gda_sql_select_field_copy ()

GdaSqlSelectField *
gda_sql_select_field_copy (GdaSqlSelectField *field);

Creates a new GdaSqlSelectField structure initiated with the values stored in field .

Parameters

field

a GdaSqlSelectField structure to be copied

 

Returns

a new GdaSqlSelectField structure.

[transfer full]


gda_sql_select_field_serialize ()

gchar *
gda_sql_select_field_serialize (GdaSqlSelectField *field);

Creates a new string representing an expression used as field in a SELECT statement before the FROM clause.

Parameters

field

a GdaSqlSelectField structure

 

Returns

a new string with the description of the expression or "null" in case field is invalid.


gda_sql_select_field_take_star_value ()

void
gda_sql_select_field_take_star_value (GdaSqlSelectField *field,
                                      GValue *value);

Sets the expression field's value in the GdaSqlSelectField structure to point to value ; after this field is the owner of value .

Parameters

field

a GdaSqlSelectField structure

 

value

a GValue to take from

 

gda_sql_select_field_take_expr ()

void
gda_sql_select_field_take_expr (GdaSqlSelectField *field,
                                GdaSqlExpr *expr);

Sets the expression field in the GdaSqlSelectField structure to point to expr and modify it to sets its parent to field .

Parameters

field

a GdaSqlSelectField structure

 

expr

a GdaSqlExpr to take from

 

gda_sql_select_field_take_alias ()

void
gda_sql_select_field_take_alias (GdaSqlSelectField *field,
                                 GValue *alias);

Sets the 'as' field's string in the GdaSqlSelectField structure. alias is freed after call this function.

Parameters

field

a GdaSqlSelectField structure

 

alias

a GValue to take from

 

gda_sql_select_target_new ()

GdaSqlSelectTarget *
gda_sql_select_target_new (GdaSqlAnyPart *parent);

Creates a new GdaSqlSelectTarget structure and sets its parent to parent . A GdaSqlSelectTarget is the table in a SELECT statement.

Parameters

parent

a GdaSqlSelectFrom

 

Returns

a new GdaSqlSelectTarget structure.


gda_sql_select_target_free ()

void
gda_sql_select_target_free (GdaSqlSelectTarget *target);

Frees a GdaSqlSelectTarget structure and its members.

Parameters

target

a GdaSqlSelectTarget structure to be freed

 

gda_sql_select_target_copy ()

GdaSqlSelectTarget *
gda_sql_select_target_copy (GdaSqlSelectTarget *target);

Creates a new GdaSqlSelectTarget structure initiated with the values stored in target .

Parameters

target

a GdaSqlSelectTarget structure to be copied

 

Returns

a new GdaSqlSelectTarget structure.


gda_sql_select_target_serialize ()

gchar *
gda_sql_select_target_serialize (GdaSqlSelectTarget *target);

Creates a new string representing a target used in a SELECT statement after the FROM clause.

Parameters

target

a GdaSqlSelectTarget structure

 

Returns

a new string with the description of the expression or "null" in case field is invalid.


gda_sql_select_target_take_table_name ()

void
gda_sql_select_target_take_table_name (GdaSqlSelectTarget *target,
                                       GValue *value);

Sets the target's name using the string stored in value and the expression to set its value to point to value; after call this function the target owns value , then you must not free it.

Parameters

target

a GdaSqlSelectTarget structure

 

value

a GValue to take from

 

gda_sql_select_target_take_select ()

void
gda_sql_select_target_take_select (GdaSqlSelectTarget *target,
                                   GdaSqlStatement *stmt);

Sets the target to be a SELECT subquery setting target's expression to use stmt ; after call this function the target owns stmt , then you must not free it.

Parameters

target

a GdaSqlSelectTarget structure

 

stmt

a GValue to take from

 

gda_sql_select_target_take_alias ()

void
gda_sql_select_target_take_alias (GdaSqlSelectTarget *target,
                                  GValue *alias);

gda_sql_select_join_new ()

GdaSqlSelectJoin *
gda_sql_select_join_new (GdaSqlAnyPart *parent);

Creates a new GdaSqlSelectJoin structure and sets its parent to parent .

Parameters

parent

a GdaSqlSelectFrom

 

Returns

a new GdaSqlSelectJoin structure


gda_sql_select_join_free ()

void
gda_sql_select_join_free (GdaSqlSelectJoin *join);

Frees a GdaSqlSelectJoin structure and its members.

Parameters

join

a GdaSqlSelectJoin structure to be freed

 

gda_sql_select_join_copy ()

GdaSqlSelectJoin *
gda_sql_select_join_copy (GdaSqlSelectJoin *join);

Creates a new GdaSqlSelectJoin structure initiated with the values stored in join .

Parameters

join

a GdaSqlSelectJoin structure to be copied

 

Returns

a new GdaSqlSelectJoin structure.


gda_sql_select_join_serialize ()

gchar *
gda_sql_select_join_serialize (GdaSqlSelectJoin *join);

Creates a new string description of the join used in a SELECT statement.

Parameters

join

a GdaSqlSelectJoin structure

 

Returns

a new string with the description of the join or "null" in case join is invalid.


gda_sql_select_join_type_to_string ()

const gchar *
gda_sql_select_join_type_to_string (GdaSqlSelectJoinType type);

Creates a new string representing the join type.

Parameters

type

a GdaSqlSelectJoinType structure to be copied

 

Returns

a string representing the Join type.


gda_sql_select_from_new ()

GdaSqlSelectFrom *
gda_sql_select_from_new (GdaSqlAnyPart *parent);

Creates a new GdaSqlSelectFrom structure and sets its parent to parent .

Parameters

parent

a GdaSqlStatementSelect

 

Returns

a new GdaSqlSelectFrom structure


gda_sql_select_from_free ()

void
gda_sql_select_from_free (GdaSqlSelectFrom *from);

Frees a GdaSqlSelectFrom structure and its members.

Parameters

from

a GdaSqlSelectFrom structure to be freed

 

gda_sql_select_from_copy ()

GdaSqlSelectFrom *
gda_sql_select_from_copy (GdaSqlSelectFrom *from);

Creates a new GdaSqlSelectFrom structure initiated with the values stored in from .

Parameters

from

a GdaSqlSelectFrom structure to be copied

 

Returns

a new GdaSqlSelectFrom structure.


gda_sql_select_from_serialize ()

gchar *
gda_sql_select_from_serialize (GdaSqlSelectFrom *from);

Creates a new string description of the FROM clause used in a SELECT statement.

Parameters

from

a GdaSqlSelectFrom structure

 

Returns

a new string with the description of the FROM or "null" in case from is invalid.


gda_sql_select_from_take_new_target ()

void
gda_sql_select_from_take_new_target (GdaSqlSelectFrom *from,
                                     GdaSqlSelectTarget *target);

Append target to the targets in the FROM clause and set target 's parent to from ; after call this function from owns target then you must not free it.

Parameters

from

a GdaSqlSelectFrom structure

 

target

a GdaSqlSelectTarget to take from

 

gda_sql_select_from_take_new_join ()

void
gda_sql_select_from_take_new_join (GdaSqlSelectFrom *from,
                                   GdaSqlSelectJoin *join);

Append join to the joins in the FROM clause and set join 's parent to from ; after call this function from owns join then you must not free it.

Parameters

from

a GdaSqlSelectFrom structure

 

join

a GdaSqlSelectJoin to take from

 

gda_sql_select_order_new ()

GdaSqlSelectOrder *
gda_sql_select_order_new (GdaSqlAnyPart *parent);

Creates a new GdaSqlSelectOrder structure and sets its parent to parent .

Parameters

parent

a GdaSqlStatementSelect

 

Returns

a new GdaSqlSelectOrder structure


gda_sql_select_order_free ()

void
gda_sql_select_order_free (GdaSqlSelectOrder *order);

Frees a GdaSqlSelectOrder structure and its members.

Parameters

order

a GdaSqlSelectOrder structure to be freed

 

gda_sql_select_order_copy ()

GdaSqlSelectOrder *
gda_sql_select_order_copy (GdaSqlSelectOrder *order);

Creates a new GdaSqlSelectOrder structure initiated with the values stored in order .

Parameters

order

a GdaSqlSelectOrder structure to be copied

 

Returns

a new GdaSqlSelectOrder structure.


gda_sql_select_order_serialize ()

gchar *
gda_sql_select_order_serialize (GdaSqlSelectOrder *order);

Creates a new string description of the ORDER BY clause used in a SELECT statement.

Parameters

order

a GdaSqlSelectOrder structure

 

Returns

a new string with the description of the ORDER BY or "null" in case order is invalid.

Types and Values

struct GdaSqlExpr

struct GdaSqlExpr {
	GdaSqlAnyPart    any;
	GValue          *value;
	GdaSqlParamSpec *param_spec;
	GdaSqlFunction  *func;
	GdaSqlOperation *cond;
	GdaSqlAnyPart   *select; /* SELECT OR COMPOUND statements: GdaSqlStatementSelect or GdaSqlStatementCompound */
	GdaSqlCase      *case_s;

	gchar           *cast_as;

	gboolean         value_is_ident;
};

This structure contains any expression, either as a value (the value part is set), a variable (the param_spec is set), or as other types of expressions.

Note 1 about the value field: if the expression represents a string value in the SQL statement, the string itself must be represented as it would be in the actual SQL, ie. it should be escaped (accordingly to the escaping rules of the database which will use the SQL). For example a string representing the 'joe' value should be

"'joe'" and not "joe".

Note 2 about the value field: if the expression represents an SQL identifier (such as a table or field name), then the value_is_ident should be set to TRUE, and value should be a string which may contain double quotes around SQL identifiers which also are reserved keywords or which are case sensitive.

Members

GdaSqlAnyPart any;

inheritance structure

 

GValue *value;

a GValue, or NULL. Please see specific note about this field.

[allow-none]

GdaSqlParamSpec *param_spec;

a GdaSqlParamSpec, or NULL if this is not a variable.

[allow-none]

GdaSqlFunction *func;

not NULL if expression is a function or aggregate.

[allow-none]

GdaSqlOperation *cond;

not NULL if expression is a condition or an operation.

[allow-none]

GdaSqlAnyPart *select;

not NULL if expression is a sub select statement (GdaSqlStatementSelect or GdaSqlStatementCompound).

[allow-none]

GdaSqlCase *case_s;

not NULL if expression is a CASE WHEN ... expression.

[allow-none]

gchar *cast_as;

not NULL if expression must be cast to another data type.

[allow-none]

gboolean value_is_ident;

Please see specific note about the value field

 

struct GdaSqlField

struct GdaSqlField {
	GdaSqlAnyPart       any;
	gchar              *field_name;

	/* validity check with a connection */
	GdaMetaTableColumn *validity_meta_table_column;
};

This structure represents the name of a table's field.


struct GdaSqlTable

struct GdaSqlTable {
	GdaSqlAnyPart       any;
	gchar              *table_name;

	/* validity check with a connection */
	GdaMetaDbObject    *validity_meta_object;
};

This structure represents the name of a table.


struct GdaSqlFunction

struct GdaSqlFunction {
	GdaSqlAnyPart       any;
	gchar              *function_name;
	GSList             *args_list;
};

This structure represents a function or an aggregate with zero or more arguments.

Members

GdaSqlAnyPart any;

inheritance structure

 

gchar *function_name;

name of the function , in the form [[catalog.]schema.]function_name

 

GSList *args_list;

list of GdaSqlExpr expressions, one for each argument

 

enum GdaSqlOperatorType

Members

GDA_SQL_OPERATOR_TYPE_AND

   

GDA_SQL_OPERATOR_TYPE_OR

   

GDA_SQL_OPERATOR_TYPE_EQ

   

GDA_SQL_OPERATOR_TYPE_IS

   

GDA_SQL_OPERATOR_TYPE_LIKE

   

GDA_SQL_OPERATOR_TYPE_BETWEEN

   

GDA_SQL_OPERATOR_TYPE_GT

   

GDA_SQL_OPERATOR_TYPE_LT

   

GDA_SQL_OPERATOR_TYPE_GEQ

   

GDA_SQL_OPERATOR_TYPE_LEQ

   

GDA_SQL_OPERATOR_TYPE_DIFF

   

GDA_SQL_OPERATOR_TYPE_REGEXP

   

GDA_SQL_OPERATOR_TYPE_REGEXP_CI

   

GDA_SQL_OPERATOR_TYPE_NOT_REGEXP

   

GDA_SQL_OPERATOR_TYPE_NOT_REGEXP_CI

   

GDA_SQL_OPERATOR_TYPE_SIMILAR

   

GDA_SQL_OPERATOR_TYPE_ISNULL

   

GDA_SQL_OPERATOR_TYPE_ISNOTNULL

   

GDA_SQL_OPERATOR_TYPE_NOT

   

GDA_SQL_OPERATOR_TYPE_IN

   

GDA_SQL_OPERATOR_TYPE_NOTIN

   

GDA_SQL_OPERATOR_TYPE_CONCAT

   

GDA_SQL_OPERATOR_TYPE_PLUS

   

GDA_SQL_OPERATOR_TYPE_MINUS

   

GDA_SQL_OPERATOR_TYPE_STAR

   

GDA_SQL_OPERATOR_TYPE_DIV

   

GDA_SQL_OPERATOR_TYPE_REM

   

GDA_SQL_OPERATOR_TYPE_BITAND

   

GDA_SQL_OPERATOR_TYPE_BITOR

   

GDA_SQL_OPERATOR_TYPE_BITNOT

   

GDA_SQL_OPERATOR_TYPE_ILIKE

   

GDA_SQL_OPERATOR_TYPE_NOTLIKE

   

GDA_SQL_OPERATOR_TYPE_NOTILIKE

   

struct GdaSqlOperation

struct GdaSqlOperation {
	GdaSqlAnyPart       any;
	GdaSqlOperatorType  operator_type;
	GSList             *operands;
};

This structure represents an operation between one or more operands.

Members

GdaSqlAnyPart any;

inheritance structure

 

GdaSqlOperatorType operator_type;

   

GSList *operands;

(element-type Gda.SqlExpr) : list of GdaSqlExpr operands

 

struct GdaSqlCase

struct GdaSqlCase {
	GdaSqlAnyPart    any;
	GdaSqlExpr      *base_expr;
	GSList          *when_expr_list;
	GSList          *then_expr_list;
	GdaSqlExpr      *else_expr;
};

This structure represents a CASE WHEN... construct

Members

GdaSqlAnyPart any;

inheritance structure

 

GdaSqlExpr *base_expr;

expression to test

 

GSList *when_expr_list;

list of GdaSqlExpr, one for each WHEN clause

 

GSList *then_expr_list;

list of GdaSqlExpr, one for each THEN clause

 

GdaSqlExpr *else_expr;

default expression for the CASE

 

struct GdaSqlSelectField

struct GdaSqlSelectField {
	GdaSqlAnyPart       any;
	GdaSqlExpr         *expr;
	gchar              *field_name; /* may be NULL if expr does not refer to a table.field, can also be "*" */
	gchar              *table_name; /* may be NULL if expr does not refer to a table.field */
	gchar              *as;

	/* validity check with a connection */
	GdaMetaDbObject    *validity_meta_object;
	GdaMetaTableColumn *validity_meta_table_column;
};

This structure represents a selected item in a SELECT statement (when executed, the returned data set will have one column per selected item). Note that the table_name and field_name field parts will be overwritten by , set the value of expr->value instead.

Members

GdaSqlAnyPart any;

inheritance structure

 

GdaSqlExpr *expr;

expression

 

gchar *field_name;

field name part of expr if expr represents a field

 

gchar *table_name;

table name part of expr if expr represents a field

 

gchar *as;

alias

 

GdaMetaDbObject *validity_meta_object;

   

GdaMetaTableColumn *validity_meta_table_column;

   

struct GdaSqlSelectTarget

struct GdaSqlSelectTarget {
	GdaSqlAnyPart       any;
	GdaSqlExpr         *expr;
	gchar              *table_name; /* may be NULL if expr does not refer to a table */
	gchar              *as;

	/* validity check with a connection */
	GdaMetaDbObject    *validity_meta_object;
};

This structure represents a target used to fetch data from in a SELECT statement; it can represent a table or a sub select. Note that the table_name part will be overwritten by , set the value of expr->value instead.

Members

GdaSqlAnyPart any;

inheritance structure

 

GdaSqlExpr *expr;

expression

 

gchar *table_name;

table name part of expr if expr represents a table

 

gchar *as;

alias

 

GdaMetaDbObject *validity_meta_object;

   

enum GdaSqlSelectJoinType

Members

GDA_SQL_SELECT_JOIN_CROSS

   

GDA_SQL_SELECT_JOIN_NATURAL

   

GDA_SQL_SELECT_JOIN_INNER

   

GDA_SQL_SELECT_JOIN_LEFT

   

GDA_SQL_SELECT_JOIN_RIGHT

   

GDA_SQL_SELECT_JOIN_FULL

   

struct GdaSqlSelectJoin

struct GdaSqlSelectJoin {
	GdaSqlAnyPart         any;
	GdaSqlSelectJoinType  type;
	gint                  position; /* between a target at (pos < @position) and the one @position */
	GdaSqlExpr           *expr;
	GSList               *use; /* list of GdaSqlField pointers */
};

This structure represents a join between two targets in a SELECT statement.

Members

GdaSqlAnyPart any;

inheritance structure

 

GdaSqlSelectJoinType type;

type of join

 

gint position;

represents a join between a target at (pos < position ) and the one at position

 

GdaSqlExpr *expr;

joining expression, or NULL.

[allow-none]

GSList *use;

list of GdaSqlField pointers to use when joining, or NULL.

[allow-none]

struct GdaSqlSelectFrom

struct GdaSqlSelectFrom {
	GdaSqlAnyPart    any;
	GSList          *targets;
	GSList          *joins;
};

This structure represents the FROM clause of a SELECT statement, it lists targets and joins

Members

GdaSqlAnyPart any;

inheritance structure

 

GSList *targets;

list of GdaSqlSelectTarget.

[element-type Gda.SqlSelectTarget]

GSList *joins;

list of GdaSqlSelectJoin.

[element-type Gda.SqlSelectJoin]

struct GdaSqlSelectOrder

struct GdaSqlSelectOrder {
	GdaSqlAnyPart    any;
	GdaSqlExpr      *expr;
	gboolean         asc;
	gchar           *collation_name;
};

This structure represents the ordering of a SELECT statement.

Members

GdaSqlAnyPart any;

inheritance structure

 

GdaSqlExpr *expr;

expression to order on

 

gboolean asc;

TRUE is ordering is ascending

 

gchar *collation_name;

name of the collation to use for ordering