Sqlite   发布时间:2022-05-22  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了sqlite3的使用大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

sqlite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、php、Java等,还有ODBC接口同样比起Mysql、POSTGResql这两款开源世界著名的来讲,它的处理速度比他们都快。

#include <stdio.h>

#include <sqlite3.h>

#include <stdlib.h>

#define _DEBUG_

int main(voID)

{

sqlite3 *db=NulL;//声明sqlite关键结构指针

char *zErrMsg = 0;

int rc;

rc = sqlite3_open("/home/xue/db/Person",@R_993_4616@; //终端到该目录,sHell建表

if(rc!=@R_386_5607@OK){

fprintf(stderr,"Can't open database:%s\n",sqlite3_errmsg(db));

sqlite3_close(db);

exit(1);

}

else printf(" successfully!\nCongratulation! Have fun!\n");

int row=1,column=1;

char **result;

char *sql="SELEct * from Per";

sqlite3_get_table(db,sql,&result,&row,&column,&zErrMsg);

int i=0;

printf("row:%d column:%d\n",row,column);

printf("\nThe result of querying is:\n");

//输出查询的数据

for(i=0;i<(row+1)*column;i++)

printf("result[%d]=%s\n",i,result[i]);

sqlite3_free_table(result);//释放result的内存空间

#ifdef _DEBUG_ //如果前面已经定义了_DEBUG_ ,则输出所创建的表存在的信息

printf("zErrMsg=%s\n",zErrMsg);//保留错误信息,如为空(null),表明在执行过程中没有错误信息

#endif

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

return 0;

}

//以上为已调试通过的代码;

#include <stdio.h>

#include <sqlite3.h>

#include <stdlib.h>

#define _DEBUG_

int main(voID)

{

sqlite3 *db=NulL;//声明sqlite关键结构指针

char *zErrMsg = 0;

int rc;

//打开或创建一个数据库文件

rc = sqlite3_open("Person",@R_993_4616@; //打开指定的数据库文件,如果不存在,将创建一个同名的数据库文件,需要传入db这个指针的指针,因为sqlite3_open函数要为这,个指针分配内存,好要让db指针指向这个内存区

if(rc!=@R_386_5607@OK){//或者直接是rc

fprintf(stderr,"Can't open database: %s\n",sqlite3_errmsg(db));

sqlite3_close(db);

exit(1);//打开失败,退出

}

else printf("You have opened a sqlite3 database named query.dbsuccessfully!\nCongratulation! Have fun!\n");

/*//创建一个表

char *sql = "create table SensorData(ID INTEGER PRIMARYKEY,Sensorid integer,SiteNum IntegeR,name varchar(12),SensorparamterREAL);";

sqlite3_exec(db,&zErrMsg);

#ifdef _DEBUG_ //如果前面已经定义了_DEBUG_ ,则输出所创建的表存在的信息

printf("%s\n",zErrMsg);

#endif

//插入数

sql="INSERT INTO\"SensorData\"VALUES(NulL,1,'200708081008',18.9);";//向要表中输入内容

sqlite3_exec(db,&zErrMsg);

sql="INSERTinTO\"SensorData\"VALUES(NulL,'200708081010',16.4);";

sqlite3_exec(db,&zErrMsg);*/

int row=0,column=0;//用于记录下面结果集中的行数和列数

char **result;//二维数组用于存放结果

//查询数据

char *sql="SELEct * from Per";//查询语句,其在C语言中对应的函数接口是sqlite3_get_table(db,@R_498_2696@g)

sqlite3_get_table(db,&zErrMsg);//result:以数组的形式存放所要查询的数据,首先是表名,然后才是数据

int i=0;

printf("row:%d column:%d\n",表明在执行过程中没有错误信息

#endif

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

return 0;

}

大佬总结

以上是大佬教程为你收集整理的sqlite3的使用全部内容,希望文章能够帮你解决sqlite3的使用所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: