All pastes #18913 Raw Edit

Mine

public text v1 · immutable
#18913 ·published 2005-07-31 02:27 UTC
rendered paste body
#ifndef _RES_ODBC_H
#define _RES_ODBC_H

#include <sql.h>
#include <sqlext.h>
#include <sqltypes.h>




typedef struct odbc_obj odbc_obj;

typedef enum { ODBC_SUCCESS=0,ODBC_FAIL=-1} odbc_status;

struct odbc_obj {
        char *name;
        char *dsn;
        char *username;
        char *password;
        SQLHENV  env;                   /* ODBC Environment */
        SQLHDBC  con;                   /* ODBC Connection Handle */
        SQLHSTMT stmt;                  /* ODBC Statement Handle */
        ast_mutex_t lock;
        int up;

};




/* functions */
odbc_obj *new_odbc_obj(char *name,char *dsn,char *username, char *password);
odbc_status odbc_obj_connect(odbc_obj *obj);
odbc_status odbc_obj_disconnect(odbc_obj *obj);
void destroy_obdc_obj(odbc_obj **obj);
int register_odbc_obj(char *name,odbc_obj *obj);
odbc_obj *fetch_odbc_obj(const char *name, int check);
int odbc_dump_fd(int fd,odbc_obj *obj);
int odbc_sanity_check(odbc_obj *obj);
int odbc_smart_execute(odbc_obj *obj, SQLHSTMT stmt);
int odbc_smart_direct_execute(odbc_obj *obj, SQLHSTMT stmt, char *sql);
#endif