加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

基于sqlite3数据库的C、C++开发-简单

发布时间:2020-12-12 20:17:51 所属栏目:百科 来源:网络整理
导读:基于 sqlite3 数据库的 C 、 C++ 开发 - 简单 Sqlite3 是文件数据库,创建数据库后将在本地生成 .db 为后缀的数据库文件,本人使用 SQLite Maestro.exe 工具生成数据库文件,此工具使用方法简单,详细请百度。 此数据库的源码可以从官方网站直接下载使用: s

基于sqlite3数据库的CC++开发-简单

Sqlite3是文件数据库,创建数据库后将在本地生成.db为后缀的数据库文件,本人使用SQLite Maestro.exe 工具生成数据库文件,此工具使用方法简单,详细请百度。

此数据库的源码可以从官方网站直接下载使用:sqlite3.c sqlite3.h,本文直接将源码添加在我们的工程当中。

首先引入头文件#include "sqlite3.h"

int main()

{

sqlite3 *db = NULL;//声明数据库对象

int res = sqlite3_open(“test.db”,&db); //打开数据库,第一个参数为数据库文件的路径,如果不存在创建

if (res != SQLITE_OK) {

printf("Open db failed.n");

return -1;

}

{

char **dbResult; //用于保存查询结果

int nRow,nColumn;//行数,列数

char *errmsg=NULL;//错误信息

int index;

char sql[256]={0}; //sql语句

int i;

snprintf(sql,sizeof(sql),"%s","select id,name from t1");//假设数据库中已存在表t1

printf("sql=%sn",sql);

res = sqlite3_get_table(db,sql,&dbResult,&nRow,&nColumn,&errmsg);

if (res != SQLITE_OK) {

printf("select failed.n");

printf("res=%d,errmsg=%s.n",res,errmsg);

sqlite3_free(errmsg);//释放内存

sqlite3_close(&db);//关闭数据库

return -1;

}

sqlite3_free(errmsg);//释放内存

printf("nRow=%d,nColumn=%dn",nRow,nColumn);

index = nColumn; //跳过表头 index=0;不跳过表头

//输出内容

for(i=0;i<nRow;i++) {

printf("id=%d,name=%sn",atoi(dbResult[index]),dbResult[index+1]);

index += nColumn;

}

sqlite3_free_table(dbResult); //释放空间

}

sqlite3_close(&db);//关闭数据库

return 0;

}

此例仅仅是打开数据库,取出内容,输出内容,关闭数据库等操作

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读