- 1
- 0
- 约1.05万字
- 约 14页
- 2018-01-08 发布于江西
- 举报
Linux下用C-C++数据库sqlite3开发笔记.doc
Linux下用C/C++数据库sqlite3 最近在Linux下用到数据库sqlite3,于是开始了该方面的学习。
0. 引言
我们这篇文章主要讲述了如何在C/C++语言中调用 sqlite 的函数接口来实现对数据库的管理,包括创建数据库、创建表格、插入数据、查询数据、删除数据等。
1. 说明
这里我们假设你已经编译好了sqlite的库文件 :libsqlite3.a libsqlite3.la libsqlite3.so libsqlite3.so.0 libsqlite3.so.0.8.6 pkgconfig和可执行文件 : sqlite3
我们再假设你的sqlite3的安装目录在 /usr/local/sqlite3 目录下。如果不是,我们可以这样做,将你的安装文件复制到 /usr/local/sqlite3 这个目录,这样我们好在下面的操作中更加统一,从而减少出错的概率
例如:[root@localhost home]# cp -rf sqlite-3.3.8-ix86/ /usr/local/sqlite3这里假设 /home/sqlite-3.3.8-ix86/ 是你的安装目录,也就是说你的sqlite原来就是安装在这里
这样之后,我们的sqlite3的库文件目录是:/usr/local/sqlite3/lib可执行文件 sqlite3 的目录是: /usr/local/sqlite3/bin头文件 sqlite3.h 的目录是: /usr/local/sqlite3/include
好拉,现在开始我们的Linux下sqlite3编程之旅。
2. 开始
这里我们现在进行一个测试。现在我们来写个C/C++程序,调用 sqlite 的 API 接口函数。
下面是一个C程序的例子,显示怎么使用 sqlite 的 C/C++ 接口. 数据库的名字由第一个参数取得且第二个参数或更多的参数是 SQL 执行语句. 这个函数调用sqlite3_open() 在 16 行打开数据库,并且sqlite3_close() 在 25 行关闭数据库连接。
[root@localhost temp]# vi opendbsqlite.c按下 i 键切换到输入模式,输入下列代码:
// name: opendbsqlite.c
// This prog is used to test C/C++ API for sqlite3.It is very simple,ha!
// Author : zieckey All rights reserved.
// data : 2006/11/13
#include stdio.h
#include sqlite3.h
int main( void )
{
sqlite3 *db=NULL;
char *zErrMsg = 0;
int rc;
//打开指定的数据库文件,如果不存在将创建一个同名的数据库文件
rc = sqlite3_open(zieckey.db, db);
if( rc ){
fprintf(stderr, Cant open database: %s\n, sqlite3_errmsg(db));
sqlite3_close(db);
exit(1);
}
else printf(You have opened a sqlite3 database named zieckey.db successfully!\nCongratulations! Have fun ! ^-^ \n);
sqlite3_close(db); //关闭数据库
return 0;
}
退出,保存。(代码输入完成后,按下 Esc 键,然后输入: :wq ,回车就好拉)
好拉,现在编译:[root@localhost temp]# gcc opendbsqlite.c -o db.out或者遇到这样的问题:[root@localhost temp]# gcc opendbsqlite.c -o db.outopendbsqlite.c:11:21: sqlite3.h: 没有那个文件或目录opendbsqlite.c: In function `main:opendbsqlite.c:19: `sqlite3 undeclared (first use in this function)opendbsqlite.c:19: (Each undeclared identifier is reported only onceopendbsqlite.c:19: for each function it appears in.)opendbsqlite.c:19: `
原创力文档

文档评论(0)