libgdamm  4.99.7
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Functions | List of all members
Gnome::Gda::Statement Class Reference

Single SQL statement. More...

Inheritance diagram for Gnome::Gda::Statement:
Inheritance graph
[legend]
Collaboration diagram for Gnome::Gda::Statement:
Collaboration graph
[legend]

Public Types

typedef std::vector< const
Glib::RefPtr< Holder > > 
HolderVector
 

Public Member Functions

virtual ~Statement ()
 
GdaStatement* gobj ()
 Provides access to the underlying C GObject. More...
 
const GdaStatement* gobj () const
 Provides access to the underlying C GObject. More...
 
GdaStatement* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
 
Glib::RefPtr< Statementcopy () const
 Copy constructor. More...
 
Glib::ustring serialize () const
 Creates a string representing the contents of stmt. More...
 
bool get_parameters (Glib::RefPtr< Set >& out_params)
 Get a new Gda::Set object which groups all the execution parameters which stmt needs. More...
 
Glib::ustring to_sql () const
 
Glib::ustring to_sql (const Glib::RefPtr< const Set >& params) const
 
Glib::ustring to_sql (const Glib::RefPtr< Connection >& cnc, const Glib::RefPtr< const Set >& params, StatementSqlFlag flags, const HolderVector& params_used) const
 Renders stmt as an SQL statement, with some control on how it is rendered. More...
 
SqlStatementType get_statement_type () const
 Get the type of statement held by stmt. More...
 
bool is_useless () const
 Tells if stmt is composed only of spaces (that is it has no real SQL code), and is completely useless as such. More...
 
bool check_structure () const
 Checks that stmt's structure is correct. More...
 
bool check_validity (const Glib::RefPtr< Connection >& cnc) const
 If cnc is not 0 then checks that every object (table, field, function) used in stmt actually exists in cnc's database. More...
 
bool normalize (const Glib::RefPtr< Connection >& cnc)
 "Normalizes" some parts of stmt, see gda_sql_statement_normalize() for more information. More...
 
Glib::PropertyProxy< gpointer > property_structure ()
 You rarely need to use properties because there are get_ and set_ methods for almost all of them. More...
 
Glib::PropertyProxy_ReadOnly
< gpointer > 
property_structure () const
 You rarely need to use properties because there are get_ and set_ methods for almost all of them. More...
 
Glib::SignalProxy2< void,
const Glib::RefPtr< Connection >
&, bool > 
signal_checked ()
 
Glib::SignalProxy0< void > signal_reset ()
 

Static Public Member Functions

static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...
 
static Glib::RefPtr< Statementcreate ()
 

Protected Member Functions

 Statement ()
 
virtual void on_checked (const Glib::RefPtr< Connection >& cnc, bool valid)
 This is a default handler for the signal signal_checked(). More...
 
virtual void on_reset ()
 This is a default handler for the signal signal_reset(). More...
 

Related Functions

(Note that these are not member functions.)

Glib::RefPtr
< Gnome::Gda::Statement
wrap (GdaStatement* object, bool take_copy=false)
 A Glib::wrap() method for this object. More...
 

Detailed Description

Single SQL statement.

The Gda::Statement represents a single SQL statement (multiple statements can be grouped in a Batch object).

A Gda::Statement can either be built "manually" by building a Gda::SqlStatement structure, or from an SQL statement using a Gda::SqlParser object. A GdaConnection can use a GdaStatement to:

Member Typedef Documentation

Constructor & Destructor Documentation

virtual Gnome::Gda::Statement::~Statement ( )
virtual
Gnome::Gda::Statement::Statement ( )
protected

Member Function Documentation

bool Gnome::Gda::Statement::check_structure ( ) const

Checks that stmt's structure is correct.

Returns
true if stmt's structure is correct.
bool Gnome::Gda::Statement::check_validity ( const Glib::RefPtr< Connection >&  cnc) const

If cnc is not 0 then checks that every object (table, field, function) used in stmt actually exists in cnc's database.

If cnc is 0, then cleans anything related to cnc in stmt.

See gda_sql_statement_check_validity() for more information.

Parameters
cncA Gda::Connection object, or 0.
Returns
true if every object actually exists in cnc's database.
Glib::RefPtr<Statement> Gnome::Gda::Statement::copy ( ) const

Copy constructor.

Returns
A the new copy of orig.
static Glib::RefPtr<Statement> Gnome::Gda::Statement::create ( )
static
bool Gnome::Gda::Statement::get_parameters ( Glib::RefPtr< Set >&  out_params)

Get a new Gda::Set object which groups all the execution parameters which stmt needs.

This new object is returned though out_params.

Note that if stmt does not need any parameter, then out_params is set to 0.

Parameters
out_paramsA place to store a new Gda::Set object, or 0.
Returns
true if no error occurred.
SqlStatementType Gnome::Gda::Statement::get_statement_type ( ) const

Get the type of statement held by stmt.

It returns GDA_SQL_STATEMENT_NONE if stmt does not hold any statement

Returns
The statement type.
static GType Gnome::Gda::Statement::get_type ( )
static

Get the GType for this class, for use with the underlying GObject type system.

GdaStatement* Gnome::Gda::Statement::gobj ( )
inline

Provides access to the underlying C GObject.

const GdaStatement* Gnome::Gda::Statement::gobj ( ) const
inline

Provides access to the underlying C GObject.

GdaStatement* Gnome::Gda::Statement::gobj_copy ( )

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

bool Gnome::Gda::Statement::is_useless ( ) const

Tells if stmt is composed only of spaces (that is it has no real SQL code), and is completely useless as such.

Returns
true if executing stmt does nothing.
bool Gnome::Gda::Statement::normalize ( const Glib::RefPtr< Connection >&  cnc)

"Normalizes" some parts of stmt, see gda_sql_statement_normalize() for more information.

Parameters
cncA Gda::Connection object.
Returns
true if no error occurred.
virtual void Gnome::Gda::Statement::on_checked ( const Glib::RefPtr< Connection >&  cnc,
bool  valid 
)
protectedvirtual

This is a default handler for the signal signal_checked().

virtual void Gnome::Gda::Statement::on_reset ( )
protectedvirtual

This is a default handler for the signal signal_reset().

Glib::PropertyProxy< gpointer > Gnome::Gda::Statement::property_structure ( )

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< gpointer > Gnome::Gda::Statement::property_structure ( ) const

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::ustring Gnome::Gda::Statement::serialize ( ) const

Creates a string representing the contents of stmt.

Returns
A string containing the serialized version of stmt.
Glib::SignalProxy2< void,const Glib::RefPtr<Connection>&,bool > Gnome::Gda::Statement::signal_checked ( )
Slot Prototype:
void on_my_checked(const Glib::RefPtr<Connection>& cnc, bool valid)
Glib::SignalProxy0< void > Gnome::Gda::Statement::signal_reset ( )
Slot Prototype:
void on_my_reset()
Glib::ustring Gnome::Gda::Statement::to_sql ( ) const
Glib::ustring Gnome::Gda::Statement::to_sql ( const Glib::RefPtr< const Set >&  params) const
Glib::ustring Gnome::Gda::Statement::to_sql ( const Glib::RefPtr< Connection >&  cnc,
const Glib::RefPtr< const Set >&  params,
StatementSqlFlag  flags,
const HolderVector params_used 
) const

Renders stmt as an SQL statement, with some control on how it is rendered.

If cnc is not 0, then the rendered SQL will better be suited to be used by cnc (in particular it may include some SQL tweaks and/or proprietary extensions specific to the database engine used by cnc): in this case the result is similar to calling Gda::Connection::statement_to_sql().

Parameters
cncA Gda::Connection object, or 0.
paramsParameters contained in a single Gda::Set object.
flagsA set of flags to control the rendering.
params_usedA place to store the list of actual Gda::Holder objects in params used to do the rendering, or 0.
Returns
A new string if no error occurred.

Friends And Related Function Documentation

Glib::RefPtr< Gnome::Gda::Statement > wrap ( GdaStatement *  object,
bool  take_copy = false 
)
related

A Glib::wrap() method for this object.

Parameters
objectThe C instance.
take_copyFalse if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns
A C++ instance that wraps this C instance.

The documentation for this class was generated from the following file: