00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef APR_DBD_H
00022 #define APR_DBD_H
00023
00024 #ifdef __cplusplus
00025 extern "C" {
00026 #endif
00027
00038
00039 typedef struct apr_dbd_driver_t apr_dbd_driver_t;
00040 typedef struct apr_dbd_t apr_dbd_t;
00041 typedef struct apr_dbd_transaction_t apr_dbd_transaction_t;
00042 typedef struct apr_dbd_results_t apr_dbd_results_t;
00043 typedef struct apr_dbd_row_t apr_dbd_row_t;
00044 typedef struct apr_dbd_prepared_t apr_dbd_prepared_t;
00045
00050 APU_DECLARE(apr_status_t) apr_dbd_init(apr_pool_t *pool);
00051
00062 APU_DECLARE(apr_status_t) apr_dbd_get_driver(apr_pool_t *pool, const char *name,
00063 const apr_dbd_driver_t **driver);
00064
00074 APU_DECLARE(apr_status_t) apr_dbd_open(const apr_dbd_driver_t *driver,
00075 apr_pool_t *ptmp, const char *params,
00076 apr_dbd_t **handle);
00077
00085 APU_DECLARE(apr_status_t) apr_dbd_close(const apr_dbd_driver_t *driver,
00086 apr_dbd_t *handle);
00087
00088
00089
00095 APU_DECLARE(const char*) apr_dbd_name(const apr_dbd_driver_t *driver);
00096
00103 APU_DECLARE(void*) apr_dbd_native_handle(const apr_dbd_driver_t *driver,
00104 apr_dbd_t *handle);
00105
00113 APU_DECLARE(int) apr_dbd_check_conn(const apr_dbd_driver_t *driver, apr_pool_t *pool,
00114 apr_dbd_t *handle);
00115
00124 APU_DECLARE(int) apr_dbd_set_dbname(const apr_dbd_driver_t *driver, apr_pool_t *pool,
00125 apr_dbd_t *handle, const char *name);
00126
00135 APU_DECLARE(int) apr_dbd_transaction_start(const apr_dbd_driver_t *driver,
00136 apr_pool_t *pool,
00137 apr_dbd_t *handle,
00138 apr_dbd_transaction_t **trans);
00139
00149 APU_DECLARE(int) apr_dbd_transaction_end(const apr_dbd_driver_t *driver,
00150 apr_pool_t *pool,
00151 apr_dbd_transaction_t *trans);
00152
00161 APU_DECLARE(int) apr_dbd_query(const apr_dbd_driver_t *driver, apr_dbd_t *handle,
00162 int *nrows, const char *statement);
00163
00176 APU_DECLARE(int) apr_dbd_select(const apr_dbd_driver_t *driver, apr_pool_t *pool,
00177 apr_dbd_t *handle, apr_dbd_results_t **res,
00178 const char *statement, int random);
00179
00186 APU_DECLARE(int) apr_dbd_num_cols(const apr_dbd_driver_t *driver,
00187 apr_dbd_results_t *res);
00188
00196 APU_DECLARE(int) apr_dbd_num_tuples(const apr_dbd_driver_t *driver,
00197 apr_dbd_results_t *res);
00198
00209 APU_DECLARE(int) apr_dbd_get_row(const apr_dbd_driver_t *driver, apr_pool_t *pool,
00210 apr_dbd_results_t *res, apr_dbd_row_t **row,
00211 int rownum);
00212
00220 APU_DECLARE(const char*) apr_dbd_get_entry(const apr_dbd_driver_t *driver,
00221 apr_dbd_row_t *row, int col);
00222
00231 APU_DECLARE(const char*) apr_dbd_error(const apr_dbd_driver_t *driver,
00232 apr_dbd_t *handle, int errnum);
00233
00242 APU_DECLARE(const char*) apr_dbd_escape(const apr_dbd_driver_t *driver,
00243 apr_pool_t *pool, const char *string,
00244 apr_dbd_t *handle);
00245
00258 APU_DECLARE(int) apr_dbd_prepare(const apr_dbd_driver_t *driver, apr_pool_t *pool,
00259 apr_dbd_t *handle, const char *query,
00260 const char *label,
00261 apr_dbd_prepared_t **statement);
00262
00263
00275 APU_DECLARE(int) apr_dbd_pquery(const apr_dbd_driver_t *driver, apr_pool_t *pool,
00276 apr_dbd_t *handle, int *nrows,
00277 apr_dbd_prepared_t *statement, int nargs,
00278 const char **args);
00279
00292 APU_DECLARE(int) apr_dbd_pselect(const apr_dbd_driver_t *driver, apr_pool_t *pool,
00293 apr_dbd_t *handle, apr_dbd_results_t **res,
00294 apr_dbd_prepared_t *statement, int random,
00295 int nargs, const char **args);
00296
00307 APU_DECLARE(int) apr_dbd_pvquery(const apr_dbd_driver_t *driver, apr_pool_t *pool,
00308 apr_dbd_t *handle, int *nrows,
00309 apr_dbd_prepared_t *statement, ...);
00310
00322 APU_DECLARE(int) apr_dbd_pvselect(const apr_dbd_driver_t *driver, apr_pool_t *pool,
00323 apr_dbd_t *handle, apr_dbd_results_t **res,
00324 apr_dbd_prepared_t *statement, int random,
00325 ...);
00326
00329 #ifdef __cplusplus
00330 }
00331 #endif
00332
00333 #endif