21 #ifndef APR_DBD_INTERNAL_H 
   22 #define APR_DBD_INTERNAL_H 
   32 #define TXN_IGNORE_ERRORS(t) \ 
   33   ((t) && ((t)->mode & APR_DBD_TRANSACTION_IGNORE_ERRORS)) 
   34 #define TXN_NOTICE_ERRORS(t) \ 
   35   ((t) && !((t)->mode & APR_DBD_TRANSACTION_IGNORE_ERRORS)) 
   37 #define TXN_DO_COMMIT(t)   (!((t)->mode & APR_DBD_TRANSACTION_ROLLBACK)) 
   38 #define TXN_DO_ROLLBACK(t) ((t)->mode & APR_DBD_TRANSACTION_ROLLBACK) 
   40 #define TXN_MODE_BITS \ 
   41   (APR_DBD_TRANSACTION_ROLLBACK|APR_DBD_TRANSACTION_IGNORE_ERRORS) 
   50     void (*
init)(apr_pool_t *pool);
 
   57     void *(*native_handle)(apr_dbd_t *handle);
 
   69     apr_dbd_t *(*open)(apr_pool_t *pool, 
const char *params,
 
   78     apr_status_t (*
check_conn)(apr_pool_t *pool, apr_dbd_t *handle);
 
   85     apr_status_t (*
close)(apr_dbd_t *handle);
 
  104                              apr_dbd_transaction_t **trans);
 
  122     int (*
query)(apr_dbd_t *handle, 
int *nrows, 
const char *statement);
 
  135     int (*
select)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res,
 
  136                   const char *statement, 
int random);
 
  162     int (*
get_row)(apr_pool_t *pool, apr_dbd_results_t *res,
 
  163                    apr_dbd_row_t **row, 
int rownum);
 
  172     const char* (*get_entry)(
const apr_dbd_row_t *row, 
int col);
 
  181     const char *(*error)(apr_dbd_t *handle, 
int errnum);
 
  190     const char *(*escape)(apr_pool_t *pool, 
const char *string,
 
  208                    const char *label, 
int nargs, 
int nvals,
 
  220     int (*
pvquery)(apr_pool_t *pool, apr_dbd_t *handle, 
int *nrows,
 
  221                    apr_dbd_prepared_t *statement, va_list args);
 
  233     int (*
pvselect)(apr_pool_t *pool, apr_dbd_t *handle,
 
  234                     apr_dbd_results_t **res,
 
  235                     apr_dbd_prepared_t *statement, 
int random, va_list args);
 
  246     int (*
pquery)(apr_pool_t *pool, apr_dbd_t *handle, 
int *nrows,
 
  247                   apr_dbd_prepared_t *statement, 
const char **args);
 
  259     int (*
pselect)(apr_pool_t *pool, apr_dbd_t *handle,
 
  260                    apr_dbd_results_t **res, apr_dbd_prepared_t *statement,
 
  261                    int random, 
const char **args);
 
  270     const char* (*get_name)(
const apr_dbd_results_t *res, 
int col);
 
  299     int (*
pvbquery)(apr_pool_t *pool, apr_dbd_t *handle, 
int *nrows,
 
  300                     apr_dbd_prepared_t *statement, va_list args);
 
  313                      apr_dbd_results_t **res,
 
  314                      apr_dbd_prepared_t *statement, 
int random, va_list args);
 
  325     int (*
pbquery)(apr_pool_t *pool, apr_dbd_t *handle, 
int *nrows,
 
  326                    apr_dbd_prepared_t *statement,
const void **args);
 
  338     int (*
pbselect)(apr_pool_t *pool, apr_dbd_t *handle,
 
  339                     apr_dbd_results_t **res, apr_dbd_prepared_t *statement,
 
  340                     int random, 
const void **args);
 
  350     apr_status_t (*
datum_get)(
const apr_dbd_row_t *row, 
int col,
 
  358 APU_DECLARE(apr_status_t) apr_dbd_mutex_lock(
void);
 
  359 APU_DECLARE(apr_status_t) apr_dbd_mutex_unlock(
void);
 
int(* transaction_mode_set)(apr_dbd_transaction_t *trans, int mode)
Definition: apr_dbd_internal.h:285
 
int(* start_transaction)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_transaction_t **trans)
Definition: apr_dbd_internal.h:103
 
apr_status_t(* datum_get)(const apr_dbd_row_t *row, int col, apr_dbd_type_e type, void *data)
Definition: apr_dbd_internal.h:350
 
apr_status_t(* check_conn)(apr_pool_t *pool, apr_dbd_t *handle)
Definition: apr_dbd_internal.h:78
 
int(* pvbselect)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, va_list args)
Definition: apr_dbd_internal.h:312
 
apr_status_t(* close)(apr_dbd_t *handle)
Definition: apr_dbd_internal.h:85
 
int(* set_dbname)(apr_pool_t *pool, apr_dbd_t *handle, const char *name)
Definition: apr_dbd_internal.h:94
 
int(* num_tuples)(apr_dbd_results_t *res)
Definition: apr_dbd_internal.h:151
 
int(* pvquery)(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, va_list args)
Definition: apr_dbd_internal.h:220
 
int(* pvbquery)(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, va_list args)
Definition: apr_dbd_internal.h:299
 
void(* init)(apr_pool_t *pool)
Definition: apr_dbd_internal.h:50
 
int(* query)(apr_dbd_t *handle, int *nrows, const char *statement)
Definition: apr_dbd_internal.h:122
 
const char * pformat
Definition: apr_dbd_internal.h:288
 
int(* pbquery)(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, const void **args)
Definition: apr_dbd_internal.h:325
 
const char *(* error)(apr_dbd_t *handle, int errnum)
Definition: apr_dbd_internal.h:181
 
apr_dbd_type_e
Definition: apr_dbd.h:55
 
const char * name
Definition: apr_dbd_internal.h:45
 
int(* get_row)(apr_pool_t *pool, apr_dbd_results_t *res, apr_dbd_row_t **row, int rownum)
Definition: apr_dbd_internal.h:162
 
int(* prepare)(apr_pool_t *pool, apr_dbd_t *handle, const char *query, const char *label, int nargs, int nvals, apr_dbd_type_e *types, apr_dbd_prepared_t **statement)
Definition: apr_dbd_internal.h:207
 
int(* end_transaction)(apr_dbd_transaction_t *trans)
Definition: apr_dbd_internal.h:113
 
Definition: apr_dbd_internal.h:43
 
int(* select)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, const char *statement, int random)
Definition: apr_dbd_internal.h:135
 
int(* transaction_mode_get)(apr_dbd_transaction_t *trans)
Definition: apr_dbd_internal.h:277
 
int(* num_cols)(apr_dbd_results_t *res)
Definition: apr_dbd_internal.h:143
 
int(* pvselect)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, va_list args)
Definition: apr_dbd_internal.h:233
 
int(* pbselect)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, const void **args)
Definition: apr_dbd_internal.h:338
 
int(* pquery)(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, const char **args)
Definition: apr_dbd_internal.h:246
 
int(* pselect)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, const char **args)
Definition: apr_dbd_internal.h:259