(一)VS2005下配置使用 sqlite3

时间:2022-08-05 05:36:21

项目原因,需要在VS2005下,C++编写软件调用本地数据库。下面就配置过程进行一下记录。

下载SQlite,编译生成sqlite3.lib

  • 解压如下:(一)VS2005下配置使用 sqlite3(一)VS2005下配置使用 sqlite3
  • 上面文章中不包括sqlite3.lib文件,那么下面就来生成这个文件。
      (1)首先,打开 VS2005的代码窗口,如下:       (一)VS2005下配置使用 sqlite3
     (2) 输入cd bin 到含有 lib.exe 所在位置       (一)VS2005下配置使用 sqlite3      (3)输入,如图,主意命令路径为sqlite3.def路径    (一)VS2005下配置使用 sqlite3
  (4)回车,如下图 ,至此已经在路径D:TestSqlite3\lib\下生成了sqlite3.lib文件   (一)VS2005下配置使用 sqlite3

VS2005下配置实用sqlite3

  • 将解压出来的sqlite3.dll 放置于 VS2005的安装目录的..\bin\下,我的是 C:\Program Files (x86)\Microsoft Visual Studio 8\VC\bin
  • 在D:\TestSqlite3 建立文件 lib 和inc ,复制文件如图。
(一)VS2005下配置使用 sqlite3
(一)VS2005下配置使用 sqlite3
  • 配置TestSqlite3工程,如图下

(一)VS2005下配置使用 sqlite3

(一)VS2005下配置使用 sqlite3

(一)VS2005下配置使用 sqlite3

  • 打开TestSqlite.cpp ,编辑代码如下:
// TestSqlite3.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"

#include <stdlib.h>
#include <stdio.h>
#include <sqlite3.h>

static int callback(void *NotUsed, int argc, char **argv, char **azColName)
{
int i;
for(i=0; i<argc; i++)
{
printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
}
printf("\n");
return 0;
}

int main(int argc, char* argv[])
{
sqlite3 *db;
char *zErrMsg = 0;
int rc;
char *sql;

/* Open database */
rc = sqlite3_open("D:\\sys.db", &db);
if( rc ){
fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
exit(0);
}else{
fprintf(stdout, "Opened database successfully\n");
}

/* Create SQL statement */
sql = "CREATE TABLE COMPANY(" \
"ID INT PRIMARY KEY NOT NULL," \
"NAME TEXT NOT NULL," \
"AGE INT NOT NULL," \
"ADDRESS CHAR(50)," \
"SALARY REAL );";

/* Execute SQL statement */
rc = sqlite3_exec(db, sql, callback, 0, &zErrMsg);
if( rc != SQLITE_OK ){
fprintf(stderr, "SQL error: %s\n", zErrMsg);
sqlite3_free(zErrMsg);
}else{
fprintf(stdout, "Table created successfully\n");
}
sqlite3_close(db);
system("pause");

return 0;
}

  • 编译链接,运行程序。在数据库中生成了 
(一)VS2005下配置使用 sqlite3


如果有问题,欢迎留言评论。