本章將帶您了解SQLite程序員使用的簡(jiǎn)單且有用的命令。這些命令稱(chēng)為SQLite點(diǎn)命令,但這些命令的例外是它們不應(yīng)以分號(hào)(;)終止。
讓我們從sqlite3
在命令提示符處鍵入一個(gè)簡(jiǎn)單命令開(kāi)始,它將為您提供SQLite命令提示符,您將在其中發(fā)出各種SQLite命令。
$sqlite3 SQLite version 3.3.6 Enter ".help" for instructions sqlite>
有關(guān)可用的點(diǎn)命令的列表,您可以隨時(shí)輸入“ .help”。例如-
sqlite>.help
上面的命令將顯示各種重要的SQLite點(diǎn)命令的列表,下表中列出了這些命令。
序號(hào) | 命令與說(shuō)明 |
---|---|
1 |
備份數(shù)據(jù)庫(kù)(默認(rèn)為“主”)到FILE |
2 |
遇到錯(cuò)誤后停止。默認(rèn)關(guān)閉 |
3 |
列出附加數(shù)據(jù)庫(kù)的名稱(chēng)和文件 |
4 |
以SQL文本格式轉(zhuǎn)儲(chǔ)數(shù)據(jù)庫(kù)。如果指定了TABLE,則僅轉(zhuǎn)儲(chǔ)與LIKE模式TABLE相匹配的表 |
5 |
打開(kāi)或關(guān)閉命令回顯 |
6 |
退出SQLite提示 |
7 |
打開(kāi)或關(guān)閉適合EXPLAIN的輸出模式。沒(méi)有參數(shù),它將打開(kāi)EXPLAIN |
8 |
打開(kāi)或關(guān)閉頁(yè)眉顯示 |
9 |
顯示此消息 |
10 |
將數(shù)據(jù)從FILE導(dǎo)入TABLE |
11 |
顯示所有索引的名稱(chēng)。如果指定了TABLE,則僅顯示與LIKE模式TABLE匹配的表的索引 |
12 |
加載擴(kuò)展庫(kù) |
13 |
打開(kāi)或關(guān)閉登錄。FILE可以是stderr / stdout |
14 |
設(shè)置MODE為以下之一的輸出模式-
|
15 |
打印STRING代替NULL值 |
16 |
將輸出發(fā)送到FILENAME |
17 |
將輸出發(fā)送到屏幕 |
18歲 |
打印文字STRING |
19 |
替換標(biāo)準(zhǔn)提示 |
20 |
退出SQLite提示 |
21 |
在FILENAME中執(zhí)行SQL |
22 |
顯示CREATE語(yǔ)句。如果指定了TABLE,則僅顯示與LIKE模式TABLE匹配的表 |
23 |
更改輸出模式和.import使用的分隔符 |
24 |
顯示各種設(shè)置的當(dāng)前值 |
25 |
開(kāi)啟或關(guān)閉統(tǒng)計(jì) |
26 |
列出與LIKE模式匹配的表的名稱(chēng) |
27 |
嘗試打開(kāi)鎖定的表,以毫秒為單位 |
28 |
設(shè)置“列”模式的列寬 |
29 |
打開(kāi)或關(guān)閉CPU計(jì)時(shí)器測(cè)量 |
讓我們嘗試使用.show
命令查看SQLite命令提示符的默認(rèn)設(shè)置。
sqlite>.show echo: off explain: off headers: off mode: column nullvalue: "" output: stdout separator: "|" width: sqlite>
確保在sqlite>提示符和dot命令之間沒(méi)有空格,否則它將無(wú)法正常工作。
您可以使用以下點(diǎn)命令序列來(lái)格式化輸出。
sqlite>.header on sqlite>.mode column sqlite>.timer on sqlite>
上面的設(shè)置將產(chǎn)生以下格式的輸出。
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0 CPU Time: user 0.000000 sys 0.000000
主表保存有關(guān)數(shù)據(jù)庫(kù)表的關(guān)鍵信息,該表稱(chēng)為sqlite_master
。您可以看到其架構(gòu),如下所示:
sqlite>.schema sqlite_master
這將產(chǎn)生以下結(jié)果。
CREATE TABLE sqlite_master ( type text, name text, tbl_name text, rootpage integer, sql text);