/************************************************************************/ /* Copyright (C), 2016-2020, [IT], 保留所有权利; /* 模 块 名:; /* 描 述:当前项目数据库操作实现; /* /* 版 本:[V]; /* 作 者:[IT]; /* 日 期:[11/13/2016]; /* /* /* 注 意:; /* /* 修改记录:[IT]; /* 修改日期:; /* 修改版本:; /* 修改内容:; /************************************************************************/ #ifndef __DATA_IMPL__ #define __DATA_IMPL__ #pragma once #include "stdafx.h" #include "table.pb.h" #include "..\\SQLite3\\sqlite3.h" #pragma comment(lib, "SQLite3.lib") #include #ifndef _WIN32 using CHAR = char; using BOOL = bool; using INT = int; #define TRUE 1 #define FALSE 0 using LPCSTR = const char*; #define MAX_PATH 256 #define IN #define OUT #define OutputDebugString(str) cout << str << endl #endif class CDataImpl { CDataImpl(void); public: static CDataImpl* GetInstance() { static CDataImpl *pObj = NULL; if ( pObj == NULL ) { pObj = new CDataImpl; //pObj->Open(); } return pObj; } virtual ~CDataImpl(void); // 私有变量; private: sqlite3 *m_psqlite3; CHAR *m_pszErrmsg; // 用户函数; public: BOOL Open(); void Close(); // begin; BOOL TransactionBegin() { INT nRet = sqlite3_exec(m_psqlite3, "begin", 0, 0, &m_pszErrmsg); return ( nRet == 0 ) ? TRUE : FALSE; } BOOL TransactionCommit() { INT nRet = sqlite3_exec(m_psqlite3, "commit", 0, 0, &m_pszErrmsg); return ( nRet == 0 ) ? TRUE : FALSE; } // commit; // 执行语句; BOOL ExecteSQL(IN LPCSTR lpSQL); // 查询编译服务器表; INT QueryComplieServer(satdDatabase::listServer &list); // 查询自动编译脚本模型; INT QueryAutoComplieModel(satdDatabase::listModel &list); // 插入编译服务器; BOOL InsertComplieServer(IN satdDatabase::complieServer &server); // 插入自动化编译脚本模型; BOOL InsertAutoComplieModel(IN satdDatabase::model &model); // 更新编译服务器信息; BOOL UpdateComplieServer(IN satdDatabase::complieServer &server); // 更新自动化编译脚本模型; BOOL UpdateAutoCompliteModel(IN satdDatabase::model &model); }; #endif