on f73d721 help sign in
130 lines 2.9 kB history raw
1/*
2 * sqlite3api.h
3 *
4 *
5 * Created by Melissa Farinaz MOZIFIAN on 22/06/2012.
6 * Copyright 2012. All rights reserved.
7 *
8 */
9#include <stdio.h>
10#include <stdlib.h>
11#include <string.h>
12#include <sqlite3.h>
13#include <ctype.h>
14#include <gc.h>
16typedef struct {
17 sqlite3 *db_ptr; // database pointer
18 sqlite3_stmt *ppStmt; // statement pointer
19 char buffer[1000]; // bufer to store errors returned by certain functions
20 const char *Ptr_tail;
21 sqlite3_value *value;
22 int row_count; // row number store by exec function
23 int col_count;
25} DBinfo;
27// struct used for backup functions
28typedef struct {
29 sqlite3 *source_ptr;
30 sqlite3_backup *backup;
31}DBbackup ;
33// Table struct used by get_table function
34// stores row and column
35// returned by get_table
36typedef struct {
37 int num_row;
38 int num_col;
39 char** table_data;
40 int data_size;
41 int* data_type;
42 DBinfo* database;
43}Table;
46void* sqlite3_open_idr(const char *filename);
48int exec_db(void*p);
50int sqlite3_close_idr(void* db);
52int sqlite3_exec_idr(void*, const char *sql);
54char* sqlite3_get_error(void* db);
56const unsigned char* sqlite3_get_val_text(void* p,int nCol);
58void* sqlite3_get_table_idr(void* db, const char *sql);
60void sqlite3_free_table_idr(void* db);
62int sqlite3_get_num_col(void* p);
64int sqlite3_get_num_row(void* p);
66int sqlite3_get_num_row_v2(void* p);
68int sqlite3_get_num_col_v2(void* p);
70int sqlite3_get_data_type(void* p, int nRow, int nCol);
72int sqlite3_get_val_int(void* p,int nCo);
74float sqlite3_get_float(void* p, int nCol);
76void* sqlite3_prepare_idr(
77 void *db, /* Database handle */
78 const char *zSql /* SQL statement, UTF-8 encoded */
79);
81int sqlite3_step_idr(void* stmt);
83void* sqlite3_bind_float_idr(void* p,int index, float val);
85void* sqlite3_bind_int_idr(void* p,int index , int val);
87void* sqlite3_bind_null_idr(void* p,int index);
89void* sqlite3_bind_text_idr(void* p,const char* text, int index,int length);
91int sqlite3_column_count_idr(void* stmt, const char* tbl_name);
93int sqlite3_data_count_idr(void* stmt);
95int sqlite3_reset_idr(void* stmt);
97int sqlite3_finalize_idr(void* stmt);
99int sqlite3_complete_idr(const char *sql);
101const char *sqlite3_column_decltype_idr(void* stmt,int n);
103const char *sqlite3_column_name_idr(void* stmt, int N);
105int sqlite3_column_bytes_idr(void* stmt, int n);
107int sqlite3_column_bytes_idr(void* stmt, int n);
109const void *sqlite3_column_blob_idr(void* stmt, int iCol);
111const unsigned char *sqlite3_column_text_idr(void* stmt, int iCol);
113int sqlite3_column_int_idr(void* stmt, int iCol);
116void* sqlite3_backup_init_idr(void* pDestm,
117 const char *zDestName,
118 void* pSource,
119 const char *zSourceName
120 );
122int sqlite3_backup_finish_idr(void *backup);
124int sqlite3_backup_step_idr(void *backup, int nPage);
126int sqlite3_backup_remaining_idr(void *backup);
128int sqlite3_backup_pagecount_idr(void *backup);
130int strLength(const char * str);