📄 clsdbtools.h
字号:
#ifndef __CLSDBTOOLS_H__
#define __CLSDBTOOLS_H__
#include <stdio.h>
#include <sqlite3.h>
#include <string.h>
#include <stdlib.h>
#ifdef _FORLINUX_
#include <glib.h>
#include <unistd.h>
#else
#include <vector>
#include <windows.h>
#include <io.h>
#endif
#include "dbmerror.h"
#define DT_MAX_LEN 10240
#define SQL_MAX_WAIT_TIMES 26
typedef struct record{
char **pRec;
}record;
#define _tprintf printf
#define _ttoi atoi
#define _tstrcasecmp strcasecmp
#define _tcscmp strcmp
#define _tcsncat strncat
#define _tcscat strcat
#define _tcscpy strcpy
#define _tcsncmp strncmp
#define _tcsnicmp strncasecmp#define _tcsstr strstr#define _tcschr strchr#define _tcstok strtok#define _topen open#define _open open#define _read read#define _write write#define _close close#define _tremove remove
#define _access access#define _tcsncpy strncpy
#define _tcslen strlen#define _stprintf sprintf
#define _lseek lseek#define _tcsicmp strcasecmp
#define _tcsrchr strrchr
#define _tmalloc malloc
#define _trealloc realloc
#define _tfree free#define _tmemset memset#define _tmemcpy memcpy#define _time_t time_t
#define _tm tm
#define _ttime time#define _tlocaltime localtime#define _tstrftime strftime#define _system system
#define _sleep sleep
#define _wsleep Sleep
using namespace std;
#ifdef _FORLINUX_
class ClsDbTools
#else
class __declspec(dllexport) ClsDbTools
#endif
{
public:
#ifdef _FORLINUX_
static GList *m_recordList; //storage all records
#else
static vector <record*> m_datavector;//storage all records
static vector <int> :: size_type m_ivector; //records number
HMODULE sqlitelib;
#endif
static char **m_colName; //field name
static int m_colNum; //field number
static sqlite3 *m_db; //An open database
public:
ClsDbTools();
~ClsDbTools();
int OpenDatabase(const char *db);
static int callback(void *NotUsed, int argc, char **argv, char **azColName);
int Execute(const char *strSql);
void CloseDatabase();
int getErrorMsg(char *sError);
int replaceChar(const char *result, char *repResult);
private:
int cleanCallback();
int strcpStarttoEnd(char *dest, const char *result, int start, int end);
private:
static int m_nRecord; //records number
//static record **m_rec;
int m_rc; //The return value of function sqlite3_exec()
char *m_zErrMsg;
static bool m_execState; //a switch of function Execute
int m_iWaitCount; //another SQL sentence wait time
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -