vtkMySQLQuery Class Reference

#include <vtkMySQLQuery.h>

Inheritance diagram for vtkMySQLQuery:

Inheritance graph
[legend]
Collaboration diagram for vtkMySQLQuery:

Collaboration graph
[legend]

List of all members.


Detailed Description

vtkSQLQuery implementation for MySQL databases

This is an implementation of vtkSQLQuery for MySQL databases. See the documentation for vtkSQLQuery for information about what the methods do.

Bug:
Since MySQL requires that all bound parameters be passed in a single mysql_stmt_bind_param call, there is no way to determine which one is causing an error when one occurs.
See also:
vtkSQLDatabase vtkSQLQuery vtkMySQLDatabase

Definition at line 45 of file vtkMySQLQuery.h.


Public Types

typedef vtkSQLQuery Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
bool SetQuery (const char *query)
bool Execute ()
int GetNumberOfFields ()
const char * GetFieldName (int i)
int GetFieldType (int i)
bool NextRow ()
bool HasError ()
const char * GetLastErrorText ()
bool BindParameter (int index, int value)
bool BindParameter (int index, unsigned long value)
bool BindParameter (int index, signed long value)
bool BindParameter (int index, vtkTypeUInt64 value)
bool BindParameter (int index, vtkTypeInt64 value)
bool BindParameter (int index, float value)
bool BindParameter (int index, double value)
bool BindParameter (int index, const vtkStdString &string)
vtkVariant DataValue (vtkIdType c)
bool BindParameter (int index, unsigned char value)
bool BindParameter (int index, signed char value)
bool BindParameter (int index, unsigned short value)
bool BindParameter (int index, signed short value)
bool BindParameter (int index, unsigned int value)
bool BindParameter (int index, const char *stringValue)
bool BindParameter (int index, const char *stringValue, size_t length)
bool BindParameter (int index, const void *data, size_t length)
bool ClearParameterBindings ()
virtual vtkStdString EscapeString (vtkStdString src, bool addSurroundingQuotes=true)

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkMySQLQuerySafeDownCast (vtkObject *o)
static vtkMySQLQueryNew ()

Protected Member Functions

 vtkMySQLQuery ()
 ~vtkMySQLQuery ()
virtual void SetLastErrorText (const char *)

Friends

class vtkMySQLDatabase

Member Typedef Documentation

Reimplemented from vtkSQLQuery.

Definition at line 52 of file vtkMySQLQuery.h.


Constructor & Destructor Documentation

vtkMySQLQuery::vtkMySQLQuery (  )  [protected]

vtkMySQLQuery::~vtkMySQLQuery (  )  [protected]


Member Function Documentation

virtual const char* vtkMySQLQuery::GetClassName (  )  [virtual]

Reimplemented from vtkSQLQuery.

static int vtkMySQLQuery::IsTypeOf ( const char *  name  )  [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkSQLQuery.

virtual int vtkMySQLQuery::IsA ( const char *  name  )  [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkSQLQuery.

static vtkMySQLQuery* vtkMySQLQuery::SafeDownCast ( vtkObject o  )  [static]

Reimplemented from vtkSQLQuery.

void vtkMySQLQuery::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkSQLQuery.

static vtkMySQLQuery* vtkMySQLQuery::New (  )  [static]

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkObject.

bool vtkMySQLQuery::SetQuery ( const char *  query  )  [virtual]

Set the SQL query string. This must be performed before Execute() or BindParameter() can be called.

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::Execute (  )  [virtual]

Execute the query. This must be performed before any field name or data access functions are used.

Implements vtkSQLQuery.

int vtkMySQLQuery::GetNumberOfFields (  )  [virtual]

The number of fields in the query result.

Implements vtkRowQuery.

const char* vtkMySQLQuery::GetFieldName ( int  i  )  [virtual]

Return the name of the specified query field.

Implements vtkRowQuery.

int vtkMySQLQuery::GetFieldType ( int  i  )  [virtual]

Return the type of the field, using the constants defined in vtkType.h.

Implements vtkRowQuery.

bool vtkMySQLQuery::NextRow (  )  [virtual]

Advance row, return false if past end.

Implements vtkRowQuery.

bool vtkMySQLQuery::HasError (  )  [virtual]

Return true if there is an error on the current query.

Implements vtkRowQuery.

vtkVariant vtkMySQLQuery::DataValue ( vtkIdType  c  )  [virtual]

Return data in current row, field c

Implements vtkRowQuery.

const char* vtkMySQLQuery::GetLastErrorText (  )  [virtual]

Get the last error text from the query

Implements vtkRowQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
unsigned char  value 
) [virtual]

Bind a parameter to a placeholder in a query. A full discussion of this feature is beyond the scope of this header file, but in short, here's how it works: Instead of saying "SELECT foo FROM mytable WHERE myfield = 12345" you can say "SELECT foo FROM mytable WHERE myfield = ?". The ? character is a placeholder for a parameter that must then be bound. Call BindParameter(0, 12345) to bind the integer value 12345 to that field. Placeholders are indexed starting at 0. You are responsible for making sure that the types match when you call BindParameter. You don't have to get it precisely correct: in general, the SQL driver is smart enough to do things like cast a short to a long or a float to a double. Bound parameters were introduced in ANSI SQL 92. Please see that standard for more information. Most of these methods are excluded from wrapping because the Java wrapper treats all integer types from char up through 64-bit long as 'int'. This is incorrect behavior but what else am I going to do? Finally, the default implementation for BindParameter(int, vtkVariant) dispatches to one of the more type-specific versions. It should be OK to use in database drivers without modification.

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
signed char  value 
) [virtual]

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
unsigned short  value 
) [virtual]

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
signed short  value 
)

bool vtkMySQLQuery::BindParameter ( int  index,
unsigned int  value 
) [virtual]

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
int  value 
) [virtual]

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
unsigned long  value 
) [virtual]

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
signed long  value 
)

bool vtkMySQLQuery::BindParameter ( int  index,
vtkTypeUInt64  value 
) [virtual]

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
vtkTypeInt64  value 
) [virtual]

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
float  value 
) [virtual]

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
double  value 
) [virtual]

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
const char *  stringValue 
) [virtual]

Bind a string value -- string must be null-terminated

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
const char *  stringValue,
size_t  length 
) [virtual]

Bind a string value -- string must be null-terminated

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
const vtkStdString string 
) [virtual]

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::BindParameter ( int  index,
const void *  data,
size_t  length 
) [virtual]

Bind a blob value. Not all databases support blobs as a data type. Check vtkSQLDatabase::IsSupported(VTK_SQL_FEATURE_BLOB) to make sure.

Reimplemented from vtkSQLQuery.

bool vtkMySQLQuery::ClearParameterBindings (  )  [virtual]

Bind a blob value. Not all databases support blobs as a data type. Check vtkSQLDatabase::IsSupported(VTK_SQL_FEATURE_BLOB) to make sure.

Reimplemented from vtkSQLQuery.

virtual vtkStdString vtkMySQLQuery::EscapeString ( vtkStdString  src,
bool  addSurroundingQuotes = true 
) [virtual]

Escape a string for use in a query

Reimplemented from vtkSQLQuery.

virtual void vtkMySQLQuery::SetLastErrorText ( const char *   )  [protected, virtual]


Friends And Related Function Documentation

friend class vtkMySQLDatabase [friend]

Definition at line 48 of file vtkMySQLQuery.h.


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

Generated on Wed Jun 3 19:19:15 2009 for VTK by  doxygen 1.5.6