Sqlite3基本命令

Sqlite3基本命令

连接数据库文件(xxxx.db可以是一个不存在的文件,当进入sqlite里并在里面创建表后,xxxx.db会自动生成)

sqlite3 xxxx.db

进入之后是这样的

sqlite>

以下所有命令都是进入sqlite后执行的


查看帮助

.help

查看数据库信息

.database

查看数据库有什么表

.tables

列出当前显示格式的配置

.show

设置列显示宽度为2

.width 2

设置显示模式为listcolumn(实际上没什么差别,还是乱)

# 设置显示模式为list
.mode list
# 设置显示模式为 column
.mode column

设置分隔符(当显示模式为list时,各列之间是有分隔符的,默认分隔符是|)

.separator :

退出sqlite

.exit

查看表结构1

PRAGMA TABLE_INFO(products_shopify);

查看表结构2(实际上是看建表语句)

# 查看所有表的建表语句
.schema
# 查看指定表建表语句
.schema 表名;

查看表结构3(实际上是看建表语句,一般情况下type="table"也可以不写)

select * from sqlite_master where type="table" and name = "表名";

以sql语句形式导出表内容

.dump table_name

设置主键自增(必须注意在sqlite3里INTEGERint不同,设置自增主键必须用INTEGER类型)

`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,

sqlite3不支持drop column(即不支持删除字段),要用复制表的方式解决

# 把原来复制一份,但是不复制要删除的那个字段
create table temp as select recordId, customer, place, time from record where 1 = 1;
# 删除原表
drop table record;
# 把复制的表重命名为原表的表名
alter table temp rename to record;

sqlite3有limit关键字,所以查询分页是可以用limit的。其它的基本都跟mysql类似(注意所有sql语句都要以;结束,有.开头的指令不用分号结束)。

打赏
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x

扫码在手机查看
iPhone请用自带相机扫
安卓用UC/QQ浏览器扫

Sqlite3基本命令