sqlite3安装及使用(linux)

一:sqlite3及相关工具的安装

1:apt指令直接安装

sudo apt-get install sqlite3 //安装sqlite3

sudo apt-get install libsqlite3-dev // 安装sqlite3编译需要的工具包

sqlite3 -version//用来检查是否安装成功

2.源码安装

//从官网下载对应的压缩包
www@ubuntu:~$ wget https://www.sqlite.org/2020/sqlite-autoconf-3310100.tar.gz  
tar -xzvf sqlite-autoconf-3310100.tar.gz //对下载的压缩包进行解压
cd sqlite-autoconf-3310100/  //进入到解压的文件夹内
./configure  //运行相应的配置文件,检测是否符合当前的编译环境,并且检查依赖的软件包是否可用或者是否缺少依赖软件包,并生成Makefile
make //执行make命令,这一步比较慢,进行编译源程序,请耐心等待
sudo make install //执行make install命令,把对应的库和可执行文件拷到指定的环境变量目录(配置环境变量 ),需要sudo权限进行安装,否则会出错,安装完毕。

二:sqlite3基本命令

1.创建表

 create table table_name(id integer, name char, tel integer);  //创建一个表

2.插入数据

 insert into table_name values(1, "www", 6666);    

3.查询相关数据

select * from table_name;  //查询所有数据
 
select * from table_name where id =       //按指定内容查询

4.更新数据

update table_name set name = "change" where id = 866;  //

5.删除数据

delete from table_name where id = 666;  //删除id为666的所有信息

6.删除表

drop table table_name; //删除整个表

三:sqlite3 API编程

sqlite3_open()

int sqlite3_open(const char *dbname,sqlite3 **db)

功能描述:打开一个数据库,如果该数据库不存在,sqlite则会自动创建

参数解析:①第一个参数是特定文件名(xx.db)

                  ②第二个参数是sqlite3 **结构体指针,成为数据库句柄(相当于是数据库的描述符)

返回值:成功则返回SQLITE_OK(0),失败则返回其他错误信息(非0值)

sqlite3_exec()

int sqlite3_exec(sqlite3 *db,const char *sql,int(*callback)(void*,int,char**,char**),void *arg,char **errmsg)

功能描述:编译和执行sql语句,将查询到的结果返回给回调函数callback

参数解析:

①第一个参数是打开的数据库句柄

②第二个参数是一个字符指针,表示所要执行的sql语句字符串,以'\0'结尾

③第三个参数是一个回调函数,用来处理查询结果,如果不需要回调则NUL填L(比如insert或delete操作时),一般用于SELECT

④第四个参数是传给回调函数的指针参数,如果不需要传递,则值填NULL

⑤第五个参数是返回错误信息

返回值:成功则返回SQLITE_OK(0),失败则返回其他错误信息(非0值)

sqlite3_get_table()

int sqlite3_get_table(sqlite3 *db, const char *zsql,
        char ***pazResult, int *nrow, int *ncolumn,char **zErrmsg);

功能描述:主要是用于以非回调的方式进行SELECT查询

参数解析:

①第一个参数是一个数据库句柄,是打开数据库得到的指针

②第二个参数是一条sql语句,与sqlite3_exec()中的一样,以'\0'结尾的字符串

③第三个参数是查询的结果,是一个一维数组,它的内存布局是:字段名称,后面是紧接着每个字段的值(就是列表名,后面跟着一个一个数据)

④第四个参数是查询出多少条记录(即查出多少行,不包括字段名的那一行)

⑤第五个参数是有多少字段(多少列)

⑥第五个参数是返回错误信息,这里是指针的指针

返回值:成功则返回SQLITE_OK(0),失败则返回其他错误信息。

sqlite3_close()

int sqlite3_close(sqlite3  *db)
//参数说明:db需要关闭的数据库文件。
//功能描述:关闭之前调用的数据库连接,所有与连接相关的语句都应该在关闭之前完成
//返回值:成功则返回SQLITE_OK(0),失败则返回其他错误信息(非0值),其中如果是查询没有完成,则返回SQLITE_BUSY

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值