【发布时间】:2015-09-19 10:03:20
【问题描述】:
我们可以将-cmd 选项与sqlite3 一起使用来运行查询,然后sqlite3 打开数据库并在其中等待交互式输入。我们如何从命令行对sqlite3 运行查询并退出?
【问题讨论】:
标签: shell command-line sqlite
我们可以将-cmd 选项与sqlite3 一起使用来运行查询,然后sqlite3 打开数据库并在其中等待交互式输入。我们如何从命令行对sqlite3 运行查询并退出?
【问题讨论】:
标签: shell command-line sqlite
只需将命令包含在数据库文件参数后的引号中即可。
例如,下面创建一个名为abc的表:
sqlite3 test.db 'create table abc (col0 int)'
【讨论】:
您可以使用.exit 命令(1),优雅地退出:
sqlite3 test.db "select * from abc;" ".exit"
【讨论】:
sqlite3 db.sqlite3 ".headers on" ".mode column" "select * from auth_user;" | less -S -#10!
sqlite3 -box my.db "select * from table;"。输入 sqlite3 --help 以查看其他选项。
如果您在从命令行运行 SQLite 3 时遇到绝对“必须”使用 -cmd 标志的情况,则可以使用连续的 blank 命令退出。
例如:
sqlite3 test.db "select * from urls;" "" > test.txt
在本例中,"" 将导致 SQLite 3 进程退出。 (至少在 OS X 上对我有用。)
【讨论】:
多行查询也可能有用:
sqlite3 ./database.db <<EOF
SELECT *
FROM something
LIMIT 5
EOF
【讨论】: