项目原因,需要在VS2005下,C++编写软件调用本地数据库。下面就配置过程进行一下记录。
下载SQlite,编译生成sqlite3.lib
- 下载Window下的sqlite,SQLite Download Page 。我下载的是 sqlite-amalgamation-3120100.zip 和 sqlite-dll-win32-x86-3120100.zip
- 解压如下:
- 上面文章中不包括sqlite3.lib文件,那么下面就来生成这个文件。
(1)首先,打开 VS2005的代码窗口,如下:
(2) 输入cd bin 到含有 lib.exe 所在位置
(3)输入,如图,主意命令路径为sqlite3.def路径
(4)回车,如下图 ,至此已经在路径D:TestSqlite3\lib\下生成了sqlite3.lib文件
VS2005下配置实用sqlite3
- 将解压出来的sqlite3.dll 放置于 VS2005的安装目录的..\bin\下,我的是 C:\Program Files (x86)\Microsoft Visual Studio 8\VC\bin
- 在D:\TestSqlite3 建立文件 lib 和inc ,复制文件如图。
- 配置TestSqlite3工程,如图下
- 打开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; }
- 编译链接,运行程序。在数据库中生成了
如果有问题,欢迎留言评论。
时间: 2024-10-31 18:20:02