如何在Linux下用C/C++语言操作数据库sqlite3

来源:互联网 发布:淘宝卖家图片怎么做 编辑:程序博客网 时间:2024/05/22 00:05

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, "Can't open database: %s
", sqlite3_errmsg(db));
sqlite3_close(db);
exit(1);
}
else printf("You have opened a sqlite3 database named zieckey.db successfully!
Congratulations! Have fun ! ^-^
");
sqlite3_close(db); //关闭数据库
return 0;
}

  退出,保存。(代码输入完成后,按下 Esc 键,然后输入: :wq ,回车就好拉)

  好拉,现在编译:[root@localhost te