国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQLite > 正文

SQLite教程(八):命令行工具介紹

2020-01-25 19:26:25
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了SQLite教程(八):命令行工具介紹,本文羅列了所有內置命令,并對命令作用做了說明,然后給出了常用示例,需要的朋友可以參考下
 

工欲善其事,必先利其器。學好SQLite的命令行工具,對于我們學習SQLite本身而言是非常非常有幫助的。最基本的一條就是,它讓我們學習SQLite的過程更加輕松愉快。言歸正傳吧,在SQLite的官方下載網站,提供了支持多個平臺的命令行工具,使用該工具我們可以完成大多數常用的SQLite操作,就像sqlplus之于Oracle。以下列表給出了該工具的內置命令:

 

命令名 命令說明
.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> .output D:/myoutput.txt
    sqlite> .dump mytabl%
    sqlite> .exit
    --在DOS環境下用記事本打開目標文件。
    D:/>notepad myoutput.txt
   

    3). 顯示當前連接的所有Attached數據庫和main數據庫。
 
復制代碼代碼如下:

    sqlite> ATTACH DATABASE 'D:/mydb.db' AS mydb;
    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> .indices mytabl%
    myindex        
   

    6). 顯示匹配表名mytable%的數據表的Schema信息。
 
復制代碼代碼如下:

    --依賴該表的索引信息也被輸出。
    sqlite> .schema mytabl%
    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;
    1
    2
    3    
    --顯示SELECT結果集的列名。
    --以列的形式顯示各個字段。
    --將其后輸出的第一列顯示寬度設置為10.
    sqlite> .header on
    sqlite> .mode column
    sqlite> .width 10
    sqlite> SELECT * FROM mytable;
    first_col
    ----------
    1
    2
    3
 

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 玉田县| 新巴尔虎右旗| 盐池县| 襄城县| 鄯善县| 海口市| 福鼎市| 远安县| 体育| 奉新县| 招远市| 沽源县| 章丘市| 镇安县| 广西| 大宁县| 东宁县| 洛南县| 宁明县| 大余县| 长汀县| 中卫市| 板桥市| 电白县| 西吉县| 营口市| 息烽县| 静海县| 德安县| 琼结县| 韩城市| 若羌县| 永宁县| 芦山县| 蒙阴县| 肃宁县| 易门县| 宿松县| 崇州市| 赤峰市| 寻乌县|