1 # include "/opt/Ingres/IngresII/ingres/files/eqdefc.h"
4 # include "/opt/Ingres/IngresII/ingres/files/eqsqlda.h"
6 typedef struct ing_field {
10 unsigned int flags; // 1 == not null
12 typedef struct ing_row {
13 IISQLVAR *sqlvar; /* ptr to sqlvar[sqld] for one row */
17 typedef enum ing_status {
21 ING_NO_ROWS_PROCESSED,
25 typedef struct ing_varchar {
29 /* It seems, Bacula needs the complete query result stored in one data structure */
30 typedef struct ing_result {
31 IISQLDA *sqlda; /* descriptor */
37 ING_ROW *act_row; /* just for iterating */
38 char numrowstring[10];
40 typedef struct ing_conn {
44 char connection_name[32];
47 /* ---Prototypes--- */
49 ING_STATUS INGresultStatus(INGresult *res);
50 short INGgetCols(const char *stmt);
51 IISQLDA *INGgetDescriptor(short numCols, const char *stmt);
52 void INGfreeDescriptor(IISQLDA *sqlda);
53 int INGgetTypeSize(IISQLVAR *ingvar);
54 INGresult *INGgetINGresult(IISQLDA *sqlda);
55 void INGfreeINGresult(INGresult *ing_res);
56 ING_ROW *INGgetRowSpace(INGresult *ing_res);
57 void INGfreeRowSpace(ING_ROW *row, IISQLDA *sqlda);
58 int INGfetchAll(const char *stmt, INGresult *ing_res);
59 void INGrowSeek(INGresult *res, int row_number);
60 char *INGgetvalue(INGresult *res, int row_number, int column_number);
61 int INGgetisnull(INGresult *res, int row_number, int column_number);
62 int INGntuples(const INGresult *res);
63 int INGnfields(const INGresult *res);
64 char *INGfname(const INGresult *res, int column_number);
65 short INGftype(const INGresult *res, int column_number);
66 INGresult *INGexec(INGconn *db, const char *query);
67 void INGclear(INGresult *res);
68 INGconn *INGconnectDB(char *dbname, char *user, char *passwd);
69 void INGdisconnectDB(INGconn *dbconn);
70 char *INGerrorMessage(const INGconn *conn);
71 char *INGcmdTuples(INGresult *res);
72 #endif /* _MYINGRES_SH */