1、下载编译文件 SQLite Download Pagehttps://www.sqlite.org/download.html
(1)下载sqlite-amalgamation获得头文件
解压后
(2)下载对应的sqlite-dll-win32-x86-3360000.zip,获取dll和生成lib文件
解压后
(3)在sqlite-dll-win32-x86-3360000文件下的cmd,
输入:LIB /DEF:SQLITE3.DEF /MACHINE:IX86
生成:生成 SQLITE3.lib 和对象 SQLITE3.exp
编译sqlite的lib文件也可参考C/C++ SQLite 之基础篇 - 小宝马的爸爸 - 博客园 (cnblogs.com)
2、创建VS2017 demo
(1)创建空工程
(2)添加头文件
#include <iostream>
using namespace std;
#include "sqlite3.h"
#pragma comment(lib, "./../lib/SQLITE3.lib")
static int _callback_exec(void * notused, int argc, char ** argv, char ** aszColName)
{
int i;
for (i = 0; i < argc; i++)
{
printf("%s = %s\n", aszColName[i], argv[i] == 0 ? "NUL" : argv[i]);
}
return 0;
}
int main(int argc, char * argv[])
{
const char * file = "test.sqlite";
const char * sSQL = "select * from stu;";
char * pErrMsg = 0;
int ret = 0;
sqlite3 * db = 0;
ret = sqlite3_open("./test.sqlite", &db);
if (ret != SQLITE_OK)
{
fprintf(stderr, "Could not open database: %s", sqlite3_errmsg(db));
exit(1);
}
printf("Successfully connected to database\n");
sqlite3_exec(db, sSQL, _callback_exec, 0, &pErrMsg);
if (ret != SQLITE_OK)
{
fprintf(stderr, "SQL error: %s\n", pErrMsg);
sqlite3_free(pErrMsg);
}
sqlite3_close(db);
db = 0;
return 0;
}
上述创建部分代码参考一步一步实现C++操作SQLite数据库_Chinamming的专栏-CSDN博客
项目项目文件包含如下: