SQLite學習手冊 命令列工具

2021-08-01 13:39:37 字數 3651 閱讀 5180

命令名

命令說明

.help

列出所有內建命令。

.backup dbname file

備份指定的資料庫到指定的檔案,預設為當前連線的main資料庫。

.databases

列出當前連線中所有attached資料庫名和檔名。

.dump tablename ...

以sql文字的格式dump當前連線的main資料庫,如果指定了表名,則只是dump和表名匹配的資料表。引數tablename支援like表示式支援的萬用字元。

.echo on|off

開啟或關閉顯示輸出。

.exit

退出當前程式。

.explain on|off

開啟或關閉當前連線的select輸出到human readable形式。

.header(s) on|off

在顯示select結果時,是否顯示列的標題。

.import file table

匯入指定檔案的資料到指定表。

.indices tablename

顯示所有索引的名字,如果指定表名,則僅僅顯示匹配該錶名的資料表的索引,引數tablename支援like表示式支援的萬用字元。

.log file|off 

開啟或關閉日誌功能,file可以為標準輸出stdout,或標準錯誤輸出stderr。

.mode mode tablename

設定輸出模式,這裡最為常用的模式是column模式,使select輸出列左對齊顯示。

.nullvalue string 

使用指定的字串代替null值的顯示。

.output filename 

將當前命令的所有輸出重定向到指定的檔案。

.output stdout 

將當前命令的所有輸出重定向到標準輸出(螢幕)。

.quit 

退出當前程式。 

.read filename 

執行指定檔案內的sql語句。

.restore dbname file 

從指定的檔案還原資料庫,預設為main資料庫,此時也可以指定其它資料庫名,被指定的資料庫成為當前連線的attached資料庫。

.schema tablename

顯示資料表的建立語句,如果指定表名,則僅僅顯示匹配該錶名的資料表建立語句,引數tablename支援like表示式支援的萬用字元。

.separator string

改變輸出模式和.import的字段間分隔符。

.show

顯示各種設定的當前值。

.tables tablename

列出當前連線中main資料庫的所有表名,如果指定表名,則僅僅顯示匹配該錶名的資料表名稱,引數tablename支援like表示式支援的萬用字元。

.width num1 num2 ...

在mode為column時,設定各個欄位的寬度,注意:該命令的引數順序表示字段輸出的順序。

見如下常用示例:

1). 備份和還原資料庫。

--在當前連線的main資料庫中建立乙個資料表,之後再通過.backup命令將main資料庫備份到d:/mydb.db檔案中。

sqlite> create table mytable (first_col integer);

sqlite>.backup'd:/mydb.db'

sqlite>.exit

--通過在命令列視窗下執行sqlite3.exe以重新建立和sqlite的連線。

--從備份檔案d:/mydb.db中恢復資料到當前連線的main資料庫中,再通過.tables命令可以看到mytable表。

sqlite>.restore'd:/mydb.db'

sqlite>.tables

mytable

2). dump資料表的建立語句到指定檔案。

--先將命令列當前的輸出重定向到d:/myoutput.txt,之後在將之前建立的mytable表的宣告語句輸出到該檔案。

sqlite>.outputd:/myoutput.txt

sqlite>.dumpmytabl%

sqlite>.exit

--在dos環境下用記事本開啟目標檔案。

d:\>notepadmyoutput.txt

3). 顯示當前連線的所有attached資料庫和main資料庫。

sqlite>attach database'd:/mydb.db'asmydb;

sqlite>.databases

seq  name               file

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

0    main

2    mydb                d:\mydb.db

4). 顯示main資料庫中的所有資料表。

sqlite>.tables

mytable

5). 顯示匹配表名mytabl%的資料表的所有索引。

sqlite> create index myindex on mytable(first_col);

sqlite>.indicesmytabl%

myindex  

6). 顯示匹配表名mytable%的資料表的schema資訊。

--依賴該錶的索引資訊也被輸出。

sqlite>.schemamytabl%

create table mytable (first_col integer);

create index myindex on mytable(first_col);

7). 格式化顯示select的輸出資訊。

--插入測試資料

sqlite> insert into mytable values(1);

sqlite> insert into mytable values(2);

sqlite> insert into mytable values(3);    

--請注意沒有任何設定時select結果集的輸出格式。

sqlite> select * from mytable;12

3    

--顯示select結果集的列名。

--以列的形式顯示各個字段。

--將其後輸出的第一列顯示寬度設定為10.

sqlite>.headeron

sqlite>.modecolumn

sqlite>.width10

sqlite> select * from mytable;

first_col

----------12

3

SQlite命令列工具的使用

sqlite特性 sqlite安裝 現在各大linux髮型版均有現成的軟體包可供安裝,而且大部份系統都是自帶有的,想確認系統裡有沒有執行下 sqlite3 非linux系統到 開啟或建立資料庫 sqlite3 test.db3 這樣就能開啟或者建立乙個新的資料庫檔案 sqlite3 test.db3...

常見命令列手冊

alias 給命令取別名 alsamixer 控制台下調節音量 bg 把任務放到後台 cal 日曆 chown 改變檔案的擁有者 cp 複製檔案 dd 轉換並複製檔案 date 日期時間 emacsclient 將乙個檔案傳送到emacs伺服器,即在當前已開啟的emacs中新開乙個緩衝區編輯檔案 f...

命令列工具

在wince6.0 中,在vs2005 的 build 選單中,有乙個 advanced build commands 其中有很多編譯選項 sysgen 相當於執行命令 blddemo q 一般第一次編譯或者是 改變了 catalog 中的item 的時候,就用這個了。clean sysgen 相當...