如何在编译嵌入式版本的sqlite3,请看我上一篇文章
一、sqlite3命令行方式使用
假如我将编译好的嵌入式的sqlite3放置在如下路径:
进入bin目录进行操作
1.运行sqlite3
运行sqlite3有两种方式
1)直接在内存里面进行数据库操作
执行 ./sqlite3 即可
但是此方式进行的所有操作随着sqlite退出而销毁
2)以本地保存数据库方式进行数据库操作
执行./sqlite3 (表名)
2.退出
直接输入命令 .exit (注意前面有个点)
如果输错命令,进入...-> 提示符,这通常意味着你正在输入一个尚未完成的 SQL 语句。想要退出,可以输入一个 ; 然后敲回车。或者输入.quit
或 .exit
来退出 SQLite3.但有的并不支持,这时候可以按 ctrl+z 强制退出,但这时候是sqlite3,而非当前状态,此命令会导致数据没有保存就退出,慎用
如果输错命令,按 backspace时候出现乱码,那么试试按住 Ctrl+退格键 进行删除
3.创建表格
create table命令创建表格,具体命令示例为
CREATE TABLE 表名 (
列名1 数据类型,
列名2 数据类型,
列名3 数据类型,
...
); //列名后面跟此列的数据类型,以空格隔开,且列与列直接用,分开。命令最后有个分号
例如:create table student(age integer, name text, id integer);
4.插入/增加数据
insert into命令插入一行数据项,具体命令示例为
insert into 表名(列名1,列名2,列名3,......) values (值1,值2,值3,......);
如果说依次添加所有列数据,可以不写列名,即
insert into 表名 vlaues (值1,值2,值3,......);
如果想一次添加多行数据,则values后面的值用 , 分开即可
insert into 表名 (列名1,列名2,......) values(值1,值2,...),(值1,值2,......);
注意:字符串应该用 单引号 引用
5.查询数据项
用select命令,具体命令示例为
select 列名 from 表名 条件;
如果想查询整张表,可以用 * 代替所以
select * frome student;
查询age和name列
select age ,name from student;
查询年龄大于30的信息
select * from student where age>30;
6.删除数据项
用delete from命令删除数据,具体命令示例为
delete from 表名 where 条件;
比如,删除年龄为55的数据项
delete frome student where age=55;
注意:DELETE FROM
命令会永久删除记录,所以在执行之前请确保你真的想要删除这些数据,并且已经备份了任何重要的信息。如果没有where条件,则删除表中的所有数据项,慎用。
在实际应用中,为了安全起见,通常建议首先使用SELECT
语句来检查将要被删除的数据,确认无误后再执行DELETE
命令。
7.修改数据项
用update 命令修改某些数据项,具体命令示例为
update 表名 set 列1=值1,列2=值2,...... where 条件;
比如将id=2的年龄改为25
update student set age=25 where id=2;
8.删除表名
用drop命令删除,具体命令示例为
drop table [if exists] 表名
方括号内的if exists可以不写
比如删除上面的student数据表
drop table student;