地下捐精qq群,钉子精神,港服冲锋岛
1. 生成 .lib 文件
从网上下载sqlite3.dll和sqlite3.def文件,以++6.0为例:
第一步:找到lib.exe所在目录
一般都在x:\program files\microsoft visual studio\vc98\bin下,在“运行”中输入cmd,然后切换到该目录下
第二步:使用lib命令生成.lib文件
很多网页上都介绍,使用lib /def:sqlite3.def /machine:ix86即可生成,可是我使用它时遇到一些小问题。
这里就不说了,说说应该注意的几点问题吧。第一个,你的sqlite3.def要是没有在 x:\program files\microsoft visual studio\vc98\bin下,需要写全路径;第二,为了清楚起见,你需要注明.lib文件的输出路径。下面我给出一个完整的命令行:x:\program files\microsoft visual studio\vc98\bin>lib /out:d:\test\sqlite3.lib /machine:ix86 /def:d:\test\sqlite3.def,然后在x:\test\e中可以找到sqlite3.lib和sqlite3.exp
如果生成的过程中提示缺少文件,去vc安装目录搜索,复制到lib.exe文件下就行了。
2.在c++中 使用sqlite
#include <iostream> #include <string> using namespace std; #include "sqlite/sqlite3.h" #pragma comment(lib,"sqlite/sqlite3.lib") int main() { sqlite3* db; int nresult = sqlite3_open("test.db",&db); if (nresult != sqlite_ok) { cout<<"打开数据库失败:"<<sqlite3_errmsg(db)<<endl; return 0; } else { cout<<"数据库打开成功"<<endl; } char* errmsg; nresult = sqlite3_exec(db,"create table fuck(id integer primary key autoincrement,name varchar(100))",null,null,&errmsg); if (nresult != sqlite_ok) { sqlite3_close(db); cout<<"创建表失败:"<<sqlite3_errmsg(db)<<endl; return 0; } string strsql; for (int i=0;i<100;i++) { strsql+="insert into fuck values(null,'heh');"; } cout<<strsql<<endl; nresult = sqlite3_exec(db,strsql.c_str(),null,null,&errmsg); if (nresult != sqlite_ok) { sqlite3_close(db); cout<<"插入数据失败:"<<sqlite3_errmsg(db)<<endl; return 0; } return 0; }
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
如何在没有core文件的情况下用dmesg+addr2line定位段错误
用QT制作3D点云显示器——QtDataVisualization
网友评论