Drizzled Public API Documentation

Query Declarations

Classes

struct  drizzle_query_st

Enumerations

enum  drizzle_query_options_t { DRIZZLE_QUERY_NONE, 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_API drizzle_result_stdrizzle_query (drizzle_con_st *con, drizzle_result_st *result, const char *query, size_t size, drizzle_return_t *ret_ptr)
DRIZZLE_API drizzle_result_stdrizzle_query_str (drizzle_con_st *con, drizzle_result_st *result, const char *query, drizzle_return_t *ret_ptr)
DRIZZLE_API 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_API 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_API drizzle_query_stdrizzle_query_create (drizzle_st *drizzle, drizzle_query_st *query)
DRIZZLE_API void drizzle_query_free (drizzle_query_st *query)
DRIZZLE_API void drizzle_query_free_all (drizzle_st *drizzle)
DRIZZLE_API drizzle_con_stdrizzle_query_con (drizzle_query_st *query)
DRIZZLE_API void drizzle_query_set_con (drizzle_query_st *query, drizzle_con_st *con)
DRIZZLE_API drizzle_result_stdrizzle_query_result (drizzle_query_st *query)
DRIZZLE_API void drizzle_query_set_result (drizzle_query_st *query, drizzle_result_st *result)
DRIZZLE_API char * drizzle_query_string (drizzle_query_st *query, size_t *size)
DRIZZLE_API void drizzle_query_set_string (drizzle_query_st *query, const char *string, size_t size)
DRIZZLE_API drizzle_query_options_t drizzle_query_options (drizzle_query_st *query)
DRIZZLE_API void drizzle_query_set_options (drizzle_query_st *query, drizzle_query_options_t options)
DRIZZLE_API void drizzle_query_add_options (drizzle_query_st *query, drizzle_query_options_t options)
DRIZZLE_API void drizzle_query_remove_options (drizzle_query_st *query, drizzle_query_options_t options)
DRIZZLE_API void * drizzle_query_context (drizzle_query_st *query)
DRIZZLE_API void drizzle_query_set_context (drizzle_query_st *query, void *context)
DRIZZLE_API void drizzle_query_set_context_free_fn (drizzle_query_st *query, drizzle_query_context_free_fn *function)
DRIZZLE_API drizzle_query_stdrizzle_query_run (drizzle_st *drizzle, drizzle_return_t *ret_ptr)
DRIZZLE_API drizzle_return_t drizzle_query_run_all (drizzle_st *drizzle)
DRIZZLE_API size_t drizzle_escape_string (char *to, const char *from, size_t from_size)
DRIZZLE_API ssize_t drizzle_safe_escape_string (char *to, size_t max_to_size, const char *from, size_t from_size)
DRIZZLE_API size_t drizzle_hex_string (char *to, const char *from, size_t from_size)
DRIZZLE_API void drizzle_mysql_password_hash (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.

Definition at line 308 of file constants.h.

States for drizle_query_st.

Definition at line 318 of file constants.h.


Function Documentation

DRIZZLE_API 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.

Definition at line 44 of file query.c.

References drizzle_con_command_write().

DRIZZLE_API 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 options for a query.

Definition at line 193 of file query.c.

Referenced by drizzle_query_add().

Get connection struct for a query.

Definition at line 148 of file query.c.

Get application context for a query.

Definition at line 205 of file query.c.

Initialize a query structure.

Definition at line 95 of file query.c.

References drizzle_set_error().

Referenced by drizzle_query_add().

Free a query structure.

Definition at line 125 of file query.c.

Referenced by drizzle_query_free_all().

Free a query structure.

Definition at line 142 of file query.c.

References drizzle_query_free().

Referenced by drizzle_free().

DRIZZLE_API 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.

Definition at line 65 of file query.c.

References drizzle_con_command_write().

Get options for a query.

Definition at line 182 of file query.c.

Remove options for a query.

Definition at line 199 of file query.c.

Get result struct for a query.

Definition at line 158 of file query.c.

Run queries concurrently, returning when one is complete.

Definition at line 259 of file query.c.

References drizzle_con_ready(), and drizzle_con_wait().

Referenced by drizzle_query_run_all().

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.

Definition at line 337 of file query.c.

References drizzle_query_run().

Set connection struct for a query.

Definition at line 153 of file query.c.

Referenced by drizzle_query_add().

DRIZZLE_API void drizzle_query_set_context ( drizzle_query_st query,
void *  context 
)

Set application context for a query.

Definition at line 210 of file query.c.

Referenced by drizzle_query_add().

DRIZZLE_API void drizzle_query_set_context_free_fn ( drizzle_query_st query,
drizzle_query_context_free_fn *  function 
)

Set callback function when the context pointer should be freed.

Definition at line 215 of file query.c.

Set options for a query.

Definition at line 187 of file query.c.

Set result struct for a query.

Definition at line 163 of file query.c.

Referenced by drizzle_query_add().

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

Set query string for a query.

Definition at line 175 of file query.c.

Referenced by drizzle_query_add().

DRIZZLE_API 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..

Definition at line 52 of file query.c.

References drizzle_con_command_write().

Referenced by slave::QueueProducer::queryForReplicationEvents().

DRIZZLE_API char* drizzle_query_string ( drizzle_query_st query,
size_t *  size 
)

Get query string for a query.

Definition at line 169 of file query.c.