在乙個專案中需要記錄目標路徑下所有檔案的md5值,由於sqlite簡單易用,選擇利用它來記錄資料。唯一的一張資料表historicalmd5,三個屬性dir(完整路徑)、time(時間)、md5。sqlite常用的c++ api有:sqlite3_open、sqlite3_prepare、sqlite3_bind_parameter_index、sqlite3_bind_text、sqlite3_column_count、sqlite3_step、sqlite3_finalize、sqlite3_close,為了呼叫方便,對這些函式做了以下封裝。
database.h
#include #includedatabase.cpp#include
using
namespace
std;
class
database
;
view code
#include "1、sqlite資料庫的c程式設計介面database.h
"#include
database::database(
const
char*filename)
database::~database()
bool database::opendb(const
char*filename)
void
database::createtable()
void
database::createindex()
void database::insert(string dir, int time, string
md5)
void database::update(string dir, int time, string
md5)
void database::query(vectorstring> > &results)
results.push_back(values);
}else
}sqlite3_finalize(statement);
}string error =sqlite3_errmsg(database);
if(error != "
not an error
") cout << query << "
"<< error <
}void
database::closedb()
2、sqlite學習手冊
3、更多對sqlite的封裝
基於IOS的sqlite資料庫封裝
dbcontroller是基於ios下的object c實現的,封裝了對sqlite資料庫的常用的查詢 插入 更新和刪除操作,不需要再次修改和實現資料庫的底層介面操作,直接申明模型類,然後呼叫dbcontroller來進行資料的操作。當前專案的限制就是模型類的成員資料型別只支援整形 浮點型 nsst...
通過封裝類學會SQLite資料庫
dao data access object 資料訪問物件是第乙個物件導向的資料庫介面 public class tree public void setid int id public string getname public void setname string name public in...
利用C API連線資料庫
1.mysql init 初始化mysql結構體 2.mysql real connect mysql mysql,const char host,const char user,const char passwd,const char db,unsigned int port,const char...