linux上一般默认是自带了sqlite3的,所以学习sqlite3,最好使用linux,这样可以跳过安装这一步。
开始,我们可以直接运行sqlite3 testsqlite3.db
.databases 可以查看数据库
.tables 可以查看表
.schema 可以查看建表语句

我们的建表语句与mysql有些区别,auto_increment自动增长是连着的,没有下划线隔开。
数据类型简单的就有integer、text、real等。
这里向表中插入数据:
sqlite> insert into user (id,name,age,mobile) values (1,"aaa",18,"15011190909"),(2,"bbb",19,"15910909890"),(3,"ccc",20,"15026418738"),(4,"ddd",21,"1390909809");
查看表中的数据:
sqlite> select * from user;
1|aaa|18|15011190909
2|bbb|19|15910909890
3|ccc|20|15026418738
4|ddd|21|1390909809
默认的显示效果是紧凑的,没有表头,数据列之间使用“|”隔开,我们可以设置,让他像mysql那样显示。
.header on
.mode column
sqlite> .header on
sqlite> select * from user;
id|name|age|mobile
1|aaa|18|15011190909
2|bbb|19|15910909890
3|ccc|20|15026418738
4|ddd|21|1390909809
sqlite> .mode column
sqlite> select * from user;
id name age mobile
---------- ---------- ---------- -----------
1 aaa 18 15011190909
2 bbb 19 15910909890
3 ccc 20 15026418738
4 ddd 21 1390909809
修改数据也是类似mysql,如下:

这个表在最初创建的时候,没有使用自动增长,我们新建一个一样的表user1,使用主键自动增长,而且将user的数据转移过来。
创建自动增长的主键,需要使用类型integer,而不能使用int,虽然int也是一种数据类型。
删除表和mysql类似,使用drop table user命令,重命名表 使用alter table user1 rename to user;

给自动增长主键表中增加一条记录:
当我们使用.quit命令退出sqlite3命令行之后,再次进入,数据存储在testsqlite3.db文件中,再次进入,数据还在。只不过我们之前设置的表展示方式还需要再次手动设置,.header on / .mode column

1357





