libdrizzle Public API Documentation

Enumerations | Functions
Query Declarations
Drizzle Client Interface

Enumerations

enum  drizzle_query_options_t { DRIZZLE_QUERY_ALLOCATED = (1 << 0) }
enum  drizzle_query_state_t { DRIZZLE_QUERY_STATE_INIT, DRIZZLE_QUERY_STATE_QUERY, DRIZZLE_QUERY_STATE_RESULT, DRIZZLE_QUERY_STATE_DONE }

Functions

drizzle_result_stdrizzle_query (drizzle_con_st *con, drizzle_result_st *result, const char *query, size_t size, drizzle_return_t *ret_ptr)
drizzle_result_stdrizzle_query_str (drizzle_con_st *con, drizzle_result_st *result, const char *query, drizzle_return_t *ret_ptr)
drizzle_result_stdrizzle_query_inc (drizzle_con_st *con, drizzle_result_st *result, const char *query, size_t size, size_t total, drizzle_return_t *ret_ptr)
drizzle_query_stdrizzle_query_add (drizzle_st *drizzle, drizzle_query_st *query, drizzle_con_st *con, drizzle_result_st *result, const char *query_string, size_t size, drizzle_query_options_t options, void *context)
drizzle_query_stdrizzle_query_create (drizzle_st *drizzle, drizzle_query_st *query)
void drizzle_query_free (drizzle_query_st *query)
void drizzle_query_free_all (drizzle_st *drizzle)
drizzle_con_stdrizzle_query_con (drizzle_query_st *query)
void drizzle_query_set_con (drizzle_query_st *query, drizzle_con_st *con)
drizzle_result_stdrizzle_query_result (drizzle_query_st *query)
void drizzle_query_set_result (drizzle_query_st *query, drizzle_result_st *result)
char * drizzle_query_string (drizzle_query_st *query, size_t *size)
void drizzle_query_set_string (drizzle_query_st *query, const char *string, size_t size)
drizzle_query_options_t drizzle_query_options (drizzle_query_st *query)
void drizzle_query_set_options (drizzle_query_st *query, drizzle_query_options_t options)
void drizzle_query_add_options (drizzle_query_st *query, drizzle_query_options_t options)
void drizzle_query_remove_options (drizzle_query_st *query, drizzle_query_options_t options)
void * drizzle_query_context (drizzle_query_st *query)
void drizzle_query_set_context (drizzle_query_st *query, void *context)
void drizzle_query_set_context_free_fn (drizzle_query_st *query, drizzle_query_context_free_fn *function)
drizzle_query_stdrizzle_query_run (drizzle_st *drizzle, drizzle_return_t *ret_ptr)
drizzle_return_t drizzle_query_run_all (drizzle_st *drizzle)
size_t drizzle_escape_string (char *to, const char *from, size_t from_size)
size_t drizzle_hex_string (char *to, const char *from, size_t from_size)

Detailed Description

These functions are used to issue queries on a connection. Single queries are made using the drizzle_query function, or you can queue multiple queries and run them concurrently using the other query functions.


Enumeration Type Documentation

Options for drizzle_query_st.

Enumerator:
DRIZZLE_QUERY_ALLOCATED 

Definition at line 268 of file constants.h.

States for drizle_query_st.

Enumerator:
DRIZZLE_QUERY_STATE_INIT 
DRIZZLE_QUERY_STATE_QUERY 
DRIZZLE_QUERY_STATE_RESULT 
DRIZZLE_QUERY_STATE_DONE 

Definition at line 277 of file constants.h.


Function Documentation

drizzle_result_st* drizzle_query ( drizzle_con_st con,
drizzle_result_st result,
const char *  query,
size_t  size,
drizzle_return_t ret_ptr 
)

Send query to server. A drizzle_result_st will be created for the results.

Parameters:
[in]conconnection to use to send the query.
[in,out]resultpointer to an unused structure that will be used for the results, or NULL to allocate a new structure.
[in]queryquery string to send.
[in]sizelength of the query string in bytes.
[out]ret_ptrpointer to the result code.
Returns:
result, a pointer to the newly allocated result structure, or NULL if the allocation failed.
drizzle_result_st* drizzle_query_str ( drizzle_con_st con,
drizzle_result_st result,
const char *  query,
drizzle_return_t ret_ptr 
)

Send query to server, using strlen to get the size of query buffer..

drizzle_result_st* drizzle_query_inc ( drizzle_con_st con,
drizzle_result_st result,
const char *  query,
size_t  size,
size_t  total,
drizzle_return_t ret_ptr 
)

Send query incrementally.

drizzle_query_st* drizzle_query_add ( drizzle_st drizzle,
drizzle_query_st query,
drizzle_con_st con,
drizzle_result_st result,
const char *  query_string,
size_t  size,
drizzle_query_options_t  options,
void *  context 
)

Add a query to be run concurrently.

Initialize a query structure.

Free a query structure.

void drizzle_query_free_all ( drizzle_st drizzle)

Free a query structure.

Get connection struct for a query.

void drizzle_query_set_con ( drizzle_query_st query,
drizzle_con_st con 
)

Set connection struct for a query.

Get result struct for a query.

Set result struct for a query.

char* drizzle_query_string ( drizzle_query_st query,
size_t *  size 
)

Get query string for a query.

void drizzle_query_set_string ( drizzle_query_st query,
const char *  string,
size_t  size 
)

Set query string for a query.

Get options for a query.

Set options for a query.

Add options for a query.

Remove options for a query.

Get application context for a query.

void drizzle_query_set_context ( drizzle_query_st query,
void *  context 
)

Set application context for a query.

Set callback function when the context pointer should be freed.

Run queries concurrently, returning when one is complete.

Run queries until they are all complete. Returns DRIZZLE_RETURN_OK if all queries complete, even if some return errors. This returns immediately if some other error occurs, leaving some queries unprocessed. You must call drizzle_result_error_code() to check if each query succeeded.

size_t drizzle_escape_string ( char *  to,
const char *  from,
size_t  from_size 
)
size_t drizzle_hex_string ( char *  to,
const char *  from,
size_t  from_size 
)