dmlite  0.6
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
dmlite::Statement Class Reference

Prepared statement wrapper. More...

#include <MySqlWrapper.h>

Public Member Functions

 Statement (MYSQL *conn, const std::string &db, const char *query)
 
 ~Statement () throw ()
 
void bindParam (unsigned index, int64_t)
 
void bindParam (unsigned index, const std::string &value)
 
void bindParam (unsigned index, const char *value, size_t size)
 
unsigned long execute (void)
 
void bindResult (unsigned index, short *destination)
 
void bindResult (unsigned index, unsigned short *destination)
 
void bindResult (unsigned index, signed int *destination)
 
void bindResult (unsigned index, unsigned int *destination)
 
void bindResult (unsigned index, signed long *destination)
 
void bindResult (unsigned index, unsigned long *destination)
 
void bindResult (unsigned index, signed long long *destination)
 
void bindResult (unsigned index, unsigned long long *destination)
 
void bindResult (unsigned index, char *destination, size_t size)
 
void bindResult (unsigned index, char *destination, size_t size, int)
 
unsigned long count (void)
 
bool fetch (void)
 

Private Types

enum  Step {
  STMT_CREATED, STMT_EXECUTED, STMT_RESULTS_UNBOUND, STMT_RESULTS_BOUND,
  STMT_DONE, STMT_FAILED
}
 

Private Member Functions

void throwException ()
 Throws the proper exception. More...
 
void zeroNullResults ()
 

Private Attributes

MYSQL_STMT * stmt_
 
unsigned long nParams_
 
unsigned long nFields_
 
MYSQL_BIND * params_
 
MYSQL_BIND * result_
 
my_bool * result_null_
 
Step status_
 
char * query_
 

Detailed Description

Prepared statement wrapper.

Member Enumeration Documentation

◆ Step

Enumerator
STMT_CREATED 
STMT_EXECUTED 
STMT_RESULTS_UNBOUND 
STMT_RESULTS_BOUND 
STMT_DONE 
STMT_FAILED 

Constructor & Destructor Documentation

◆ Statement()

dmlite::Statement::Statement ( MYSQL *  conn,
const std::string &  db,
const char *  query 
)

◆ ~Statement()

dmlite::Statement::~Statement ( )
throw (
)

Member Function Documentation

◆ bindParam() [1/3]

void dmlite::Statement::bindParam ( unsigned  index,
int64_t   
)

◆ bindParam() [2/3]

void dmlite::Statement::bindParam ( unsigned  index,
const std::string &  value 
)

◆ bindParam() [3/3]

void dmlite::Statement::bindParam ( unsigned  index,
const char *  value,
size_t  size 
)

◆ bindResult() [1/10]

void dmlite::Statement::bindResult ( unsigned  index,
short *  destination 
)

◆ bindResult() [2/10]

void dmlite::Statement::bindResult ( unsigned  index,
unsigned short *  destination 
)

◆ bindResult() [3/10]

void dmlite::Statement::bindResult ( unsigned  index,
signed int *  destination 
)

◆ bindResult() [4/10]

void dmlite::Statement::bindResult ( unsigned  index,
unsigned int *  destination 
)

◆ bindResult() [5/10]

void dmlite::Statement::bindResult ( unsigned  index,
signed long *  destination 
)

◆ bindResult() [6/10]

void dmlite::Statement::bindResult ( unsigned  index,
unsigned long *  destination 
)

◆ bindResult() [7/10]

void dmlite::Statement::bindResult ( unsigned  index,
signed long long *  destination 
)

◆ bindResult() [8/10]

void dmlite::Statement::bindResult ( unsigned  index,
unsigned long long *  destination 
)

◆ bindResult() [9/10]

void dmlite::Statement::bindResult ( unsigned  index,
char *  destination,
size_t  size 
)

◆ bindResult() [10/10]

void dmlite::Statement::bindResult ( unsigned  index,
char *  destination,
size_t  size,
int   
)

◆ count()

unsigned long dmlite::Statement::count ( void  )

◆ execute()

unsigned long dmlite::Statement::execute ( void  )

◆ fetch()

bool dmlite::Statement::fetch ( void  )

◆ throwException()

void dmlite::Statement::throwException ( )
private

Throws the proper exception.

◆ zeroNullResults()

void dmlite::Statement::zeroNullResults ( )
private

Member Data Documentation

◆ nFields_

unsigned long dmlite::Statement::nFields_
private

◆ nParams_

unsigned long dmlite::Statement::nParams_
private

◆ params_

MYSQL_BIND* dmlite::Statement::params_
private

◆ query_

char* dmlite::Statement::query_
private

◆ result_

MYSQL_BIND* dmlite::Statement::result_
private

◆ result_null_

my_bool* dmlite::Statement::result_null_
private

◆ status_

Step dmlite::Statement::status_
private

◆ stmt_

MYSQL_STMT* dmlite::Statement::stmt_
private

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