网易首页 > 网易号 > 正文 申请入驻

sqlite - 在终端中操作命令

0
分享至

sqlite命令

sqlite提供一个终端操作,支持很多命令,可以通过这些命令对sqlite数据库进行维护。

命令清单

可以通过sqlite命令进入终端,会提示.help来获取命令帮助

SQLite version 3.28.0 2019-04-16 19:49:53

Enter ".help" for usage hints.

sqlite> .help

.archive ... Manage SQL archives

.auth ON|OFF Show authorizer callbacks

.backup ?DB? FILE Backup DB (default "main") to FILE #备份 DB 数据库(默认是 "main")到 FILE 文件。

.bail on|off Stop after hitting an error. Default OFF #发生错误后停止。默认为 OFF。

.binary on|off Turn binary output on or off. Default OFF

.cd DIRECTORY Change the working directory to DIRECTORY

.changes on|off Show number of rows changed by SQL

.check GLOB Fail if output since .testcase does not match

.clone NEWDB Clone data into NEWDB from the existing database

.databases List names and files of attached databases #列出数据库的名称及其所依附的文件。

.dbconfig ?op? ?val? List or change sqlite3_db_config() options

.dbinfo ?DB? Show status information about the database

.dump ?TABLE? ... Render all database content as SQL #以 SQL 文本格式转储数据库;如果指定了 TABLE 表,则只转储匹配 LIKE 模式的 TABLE 表。

.echo on|off Turn command echo on or off #开启或关闭 echo 命令。

.eqp on|off|full|... Enable or disable automatic EXPLAIN QUERY PLAN # 开启或关闭适合于 EXPLAIN 的输出模式。支持模式:off|on|trace|trigger|full

.excel Display the output of next command in a spreadsheet

.exit ?CODE? Exit this program with return-code CODE #退出 SQLite 提示符。

.expert EXPERIMENTAL. Suggest indexes for specified queries

.fullschema ?--indent? Show schema and the content of sqlite_stat tables

.headers on|off Turn display of headers on or off #开启或关闭头部显示。

.help ?-all? ?PATTERN? Show help text for PATTERN

.import FILE TABLE Import data from FILE into TABLE #导入来自 FILE 文件的数据到 TABLE 表中。

.imposter INDEX TABLE Create imposter table TABLE on index INDEX

.indexes ? Show names of indexes #查看所有索引的名称

.limit ?LIMIT? ?VAL? Display or change the value of an SQLITE_LIMIT

.lint OPTIONS Report potential schema issues.

.load FILE ?ENTRY? Load an extension library #加载一个扩展库。

.log FILE|off Turn logging on or off. FILE can be stderr/stdout

.mode MODE ? Set output mode 设置输出模式,MODE 可以是下列之一: csv 逗号分隔的值;column 左对齐的列;html HTML 的 <table> 代码;insert TABLE 表的 SQL 插入(insert)语句;line 每行一个值;list 由 .separator 字符串分隔的值;tabs 由 Tab 分隔的值;tcl TCL 列表元素

.nullvalue STRING Use STRING in place of NULL values #在 NULL 值的地方输出 STRING 字符串。

.once (-e|-x|FILE) Output for the next SQL command only to FILE

.open ?OPTIONS? ?FILE? Close existing database and reopen FILE

.output ?FILE? Send output to FILE or stdout if FILE is omitted #发送输出到 FILENAME 文件。.output stdout 发送输出到屏幕。

.parameter CMD ... Manage SQL parameter bindings

.print STRING... Print literal STRING #逐字地输出 STRING 字符串。

.progress N Invoke progress handler after every N opcodes

.prompt MAIN CONTINUE Replace the standard prompts #替换标准提示符。

.quit Exit this program #退出 SQLite 提示符。

.read FILE Read input from FILE #执行 FILENAME 文件中的 SQL。

.restore ?DB? FILE Restore content of DB (default "main") from FILE

.save FILE Write in-memory database into FILE

.scanstats on|off Turn sqlite3_stmt_scanstatus() metrics on or off

.schema ?PATTERN? Show the CREATE statements matching PATTERN #显示 CREATE 语句。如果指定了 TABLE 表,则只显示匹配 LIKE 模式的 TABLE 表。

.selftest ?OPTIONS? Run tests defined in the SELFTEST table

.separator COL ?ROW? Change the column and row separators #改变输出模式和 .import 所使用的分隔符。

.sha3sum ... Compute a SHA3 hash of database content

.shell CMD ARGS... Run CMD ARGS... in a system shell

.show Show the current values for various settings #显示各种设置的当前值。

.stats ?on|off? Show stats or turn stats on or off #开启或关闭统计。

.system CMD ARGS... Run CMD ARGS... in a system shell

.tables ? List names of tables matching LIKE pattern TABLE #列出匹配 LIKE 模式的表的名称。

.testcase NAME Begin redirecting output to 'testcase-out.txt' #将输出重定向到testcase-out.txt的文件中

.timeout MS Try opening locked tables for MS milliseconds #尝试打开锁定的表 MS 毫秒。

.timer on|off Turn SQL timer on or off #开启或关闭 CPU 定时器。

.trace ?OPTIONS? Output each SQL statement as it is run

.vfsinfo ?AUX? Information about the top-level VFS

.vfslist List all available VFSes

.vfsname ?AUX? Print the name of the VFS stack

.width NUM1 NUM2 ... Set column widths for "column" mode #为 "column" 模式设置列宽度。

查看当前显示设置

sqlite> .show

echo: off

eqp: off

explain: auto

headers: off

mode: list

nullvalue: ""

output: stdout

colseparator: "|"

rowseparator: "\n"

stats: off

width:

filename: 1.sqlite

格式化输出

sqlite> .header on #设置显示表头

sqlite> .mode column #设置输出表格

sqlite> .timer on #CPU计数器

sqlite> select * from t1;

id name

---------- ----------

1 21123

2 123123

Run Time: real 0.001 user 0.000200 sys 0.000067

sqlite_master 表格

主表中保存数据库表的关键信息,并把它命名为 sqlite_master。

查看master的建表语句

sqlite> .schema sqlite_master

CREATE TABLE sqlite_master (

type text,

name text,

tbl_name text,

rootpage integer,

sql text

);

查看所有的表

sqlite> .tables

查看索引

如果不指定表名就是查看所有的索引

sqlite> create table t2 (id int primary key , name varchar(32) );

sqlite> .indexes t2

查看建表语句

sqlite> .shema t2

CREATE TABLE t2 (id int primary key , name varchar(32) );

导出SQL语句

sqlite> .dump t1

PRAGMA foreign_keys=OFF;

BEGIN TRANSACTION;

CREATE TABLE t1 ( id int , name varchar(20));

INSERT INTO t1 VALUES(1,'21123');

INSERT INTO t1 VALUES(2,'123123');

COMMIT;

也可以直接到处到文件,只要指定导出的文件即可。

sqlite> .output backup.sql

sqlite> .dump t1

导入sql

sqlite> .read backup.sql

备份数据库

sqlite> .backup 2.sqlite3

从TXT文本里面导入

有时候我们也希望txt文本里面的有规律的数据,可以直接导入到sqlite3数据库。

先指定字段分隔符。

sqlite3 db.sqlite

sqlite> .separator ","

sqlite> .import a.txt table1

导出到TXT文本

直接使用select语句直接查询出来就可以了,默认是以|作为分隔符

sqlite3 db.sqlite

sqlite> .separator ","

sqlite> .output a.txt

sqlite> select * from table1

sqlite> .exit

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
2017年他花3万英镑买下1辆旧坦克,结果居然在油箱找到25公斤黄金

2017年他花3万英镑买下1辆旧坦克,结果居然在油箱找到25公斤黄金

梦里大唐
2024-04-25 17:52:24
二手房成交价格再次被关闭,释放什么信号?

二手房成交价格再次被关闭,释放什么信号?

凤凰房产合肥
2024-04-25 18:10:03
杨幂新剧被女二碾压!30岁王鹤润惊艳出场,才知女演员长相很重要

杨幂新剧被女二碾压!30岁王鹤润惊艳出场,才知女演员长相很重要

流浪吧地球
2024-04-25 12:59:21
这个户型住在A可能爽死

这个户型住在A可能爽死

坠入二次元的海洋
2024-04-18 17:47:35
东北雨姐的停更再次警示了网络红人们,人生过后就永远回不来了?

东北雨姐的停更再次警示了网络红人们,人生过后就永远回不来了?

将帅无能累死三军
2024-04-23 08:39:41
苗苗最新浪姐舞台造型,这身材你能看出来已经生了三个娃了吗?

苗苗最新浪姐舞台造型,这身材你能看出来已经生了三个娃了吗?

娱乐圈酸柠檬
2024-04-25 09:05:58
大瓜!金靖官宣结婚,并自曝已经怀孕,男方帅气年轻多重身份

大瓜!金靖官宣结婚,并自曝已经怀孕,男方帅气年轻多重身份

娱乐的小灶
2024-04-25 18:08:41
2024年,若房价继续下跌,国内41.5%的家庭,或将面临“4大困境”

2024年,若房价继续下跌,国内41.5%的家庭,或将面临“4大困境”

山丘楼评
2024-04-23 10:49:35
美国务卿布林肯访华,台湾问题摊牌

美国务卿布林肯访华,台湾问题摊牌

金羊网
2024-04-25 09:20:27
中国女足选帅取得重大突破!陈婉婷基本无缘,孙雯这次怎么选?

中国女足选帅取得重大突破!陈婉婷基本无缘,孙雯这次怎么选?

罗掌柜体育
2024-04-25 07:23:31
张康阳:24岁来国米意大利人觉得我是小孩,现在去球场还会被拦

张康阳:24岁来国米意大利人觉得我是小孩,现在去球场还会被拦

直播吧
2024-04-24 23:36:15
Angelababy当年跟着黄晓明回青岛过年 也是在认真当山东媳妇 了的

Angelababy当年跟着黄晓明回青岛过年 也是在认真当山东媳妇 了的

娱乐圈酸柠檬
2024-04-24 00:55:48
1948年,毛泽东看了粟裕的电报感到不对劲,命令陈毅立即返回华野

1948年,毛泽东看了粟裕的电报感到不对劲,命令陈毅立即返回华野

梅子就是我
2024-04-15 17:57:49
降了!降了!终于降了!

降了!降了!终于降了!

汝南生活
2024-04-24 20:12:16
实体经济不死,天理难容,男子开面馆日均100份,每月房租2.3万

实体经济不死,天理难容,男子开面馆日均100份,每月房租2.3万

坠入二次元的海洋
2024-04-24 20:58:08
真要养老❓切尔西一大串超长合同:首发大前锋杰克逊签至2031

真要养老❓切尔西一大串超长合同:首发大前锋杰克逊签至2031

直播吧
2024-04-25 14:30:16
回顾:多大的仇恨?女子与丈夫行房事时,竟用剪刀剪掉丈夫的下体

回顾:多大的仇恨?女子与丈夫行房事时,竟用剪刀剪掉丈夫的下体

案中追评
2024-04-25 13:31:37
四川6市(州)发布人事任免

四川6市(州)发布人事任免

金台资讯
2024-04-24 21:35:23
布林肯在上海纽约大学演讲:中美学生交流是避免误判的最好方法

布林肯在上海纽约大学演讲:中美学生交流是避免误判的最好方法

澎湃新闻
2024-04-25 15:00:32
还能夺冠吗?克洛普:需要阿森纳和曼城表现糟糕 为今天表现道歉

还能夺冠吗?克洛普:需要阿森纳和曼城表现糟糕 为今天表现道歉

直播吧
2024-04-25 05:36:15
2024-04-25 19:00:50
linux运维菜
linux运维菜
喜欢使用Linux!
412文章数 4575关注度
往期回顾 全部

科技要闻

北京车展,被穿红衣服的他们占领

头条要闻

俄副防长被抓:进国防部3年升副部长 系绍伊古"老搭档"

头条要闻

俄副防长被抓:进国防部3年升副部长 系绍伊古"老搭档"

体育要闻

当胜利变成意外,就不要再提未来……

娱乐要闻

心疼!伊能静曝儿子曾被狗仔追到洗手间

财经要闻

曙光已现?瑞银开始转而看好中国地产业

汽车要闻

全新哈弗H9亮相 大号方盒子硬派SUV入列

态度原创

教育
房产
时尚
数码
手机

教育要闻

东莞一小学4年更换3款校服,家长敢怒不敢言,校方回应毫无说服力

房产要闻

涉及黄埔、番禺、增城!广州新一轮大规模征地启动

我该怎么办?总是觉得渣男很有魅力!

数码要闻

小米平板6系列全量推送PC级WPS!电脑同款布局、操作

手机要闻

联想旗下来酷X1 5G手机上架 搭载6nm国产芯 1599元起

无障碍浏览 进入关怀版