在c++中使用SQlite的操作实例
程序员文章站
2022-03-26 17:47:17
1. 生成 .lib 文件
从网上下载sqlite3.dll和sqlite3.def文件,以++6.0为例:
第一步:找到lib.exe所在目录
一般都在x:\program files\micro...
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; }
上一篇: Oracle去重后再进行count()计数的操作实例
下一篇: 基于Oracle的SQL优化教程
推荐阅读
-
在Python程序中操作文件之isatty()方法的使用教程
-
socket在egg中的使用实例代码详解
-
redis在java中的使用(实例讲解)
-
接口对象的实例化在接口回调中的使用方法
-
在ASP.NET 2.0中操作数据之十:使用 GridView和DetailView实现的主/从报表
-
socket在egg中的使用实例代码详解
-
在ASP.NET 2.0中操作数据之十四:使用FormView 的模板
-
在ASP.NET 2.0中操作数据之三十三:基于DataList和Repeater使用DropDownList过滤的主/从报表
-
接口对象的实例化在接口回调中的使用方法
-
solr在java中的使用实例代码