1. 程式人生 > >sqlite3學習之初識、安裝以及常用的命令

sqlite3學習之初識、安裝以及常用的命令

SQLite是一個軟體庫,實現了自給自足的、無伺服器的、零配置的、事務性的 SQL 資料庫引擎,它是一個零配置的資料庫,這意味著與其他資料庫一樣,我們不需要在系統中配置就可以使用,就像其他資料庫,SQLite 引擎不是一個獨立的程序,可以按應用程式需求進行靜態或動態連線,並且,它可以直接訪問其儲存檔案,它還是一個增長最快的資料庫引擎,這是在普及方面的增長,與它的尺寸大小無關,並且它的原始碼不受版權限制。

來看下有關sqlite的一些優點:

  • 不需要一個單獨的伺服器程序或操作的系統(無伺服器的)。

  • SQLite 不需要配置,這意味著不需要安裝或管理。

  • 一個完整的 SQLite 資料庫是儲存在一個單一的跨平臺的磁碟檔案。

  • SQLite 是非常小的,是輕量級的,完全配置時小於 400KiB,省略可選功能配置時小於250KiB。

  • SQLite 是自給自足的,這意味著不需要任何外部的依賴。

  • SQLite 事務是完全相容 ACID 的,允許從多個程序或執行緒安全訪問。

  • SQLite 支援 SQL92(SQL2)標準的大多數查詢語言的功能。

  • SQLite 使用 ANSI-C 編寫的,並提供了簡單和易於使用的 API。

  • SQLite 可在 UNIX(Linux, Mac OS-X, Android, iOS)和 Windows(Win32, WinCE, WinRT)中執行。

有關於這種資料庫的安裝,大家可以戳這裡檢視。

接下來看下這個sqlite3進入互動模式的命令:

sqlite3

來看下效果:

如果我們需要獲取可用的點命令的清單,可以在任何時候輸入 ".help",如下:

.help命令會顯示各種重要的 SQLite 點命令的列表,如下:

命令 描述
.backup ?DB? FILE 備份 DB 資料庫(預設是 "main")到 FILE 檔案。
.bail ON|OFF 發生錯誤後停止。預設為 OFF。
.databases 列出資料庫的名稱及其所依附的檔案。
.dump ?TABLE? 以 SQL 文字格式轉儲資料庫。如果指定了 TABLE 表,則只轉儲匹配 LIKE 模式的 TABLE 表。
.echo ON|OFF 開啟或關閉 echo 命令。
.exit 退出 SQLite 提示符。
.explain ON|OFF 開啟或關閉適合於 EXPLAIN 的輸出模式。如果沒有帶引數,則為 EXPLAIN on,及開啟 EXPLAIN。
.header(s) ON|OFF 開啟或關閉頭部顯示。
.help 顯示訊息。
.import FILE TABLE 匯入來自 FILE 檔案的資料到 TABLE 表中。
.indices ?TABLE? 顯示所有索引的名稱。如果指定了 TABLE 表,則只顯示匹配 LIKE 模式的 TABLE 表的索引。
.load FILE ?ENTRY? 載入一個擴充套件庫。
.log FILE|off 開啟或關閉日誌。FILE 檔案可以是 stderr(標準錯誤)/stdout(標準輸出)。
.mode MODE 設定輸出模式,MODE 可以是下列之一:
  • csv 逗號分隔的值

  • column 左對齊的列

  • html HTML 的 <table> 程式碼

  • insert TABLE 表的 SQL 插入(insert)語句

  • line 每行一個值

  • list 由 .separator 字串分隔的值

  • tabs 由 Tab 分隔的值

  • tcl TCL 列表元素

.nullvalue STRING 在 NULL 值的地方輸出 STRING 字串。
.output FILENAME 傳送輸出到 FILENAME 檔案。
.output stdout 傳送輸出到螢幕。
.print STRING... 逐字地輸出 STRING 字串。
.prompt MAIN CONTINUE 替換標準提示符。
.quit 退出 SQLite 提示符。
.read FILENAME 執行 FILENAME 檔案中的 SQL。
.schema ?TABLE? 顯示 CREATE 語句。如果指定了 TABLE 表,則只顯示匹配 LIKE 模式的 TABLE 表。
.separator STRING 改變輸出模式和 .import 所使用的分隔符。
.show 顯示各種設定的當前值。
.stats ON|OFF 開啟或關閉統計。
.tables ?PATTERN? 列出匹配 LIKE 模式的表的名稱。
.timeout MS 嘗試開啟鎖定的表 MS 毫秒。
.width NUM NUM 為 "column" 模式設定列寬度。
.timer ON|OFF 開啟或關閉 CPU 定時器。

如果想要看到類似於MySQL的格式化輸出的格式,大家可以參考如下命令:

sqlite>.header on
sqlite>.mode column
sqlite>.timer on
sqlite>

主表中儲存資料庫表的關鍵資訊,並把它命名為 sqlite_master。如果我們要查看錶概要,可以使用如下命令:

.schema sqlite_master

好啦,本次記錄就到這裡了。

如果感覺不錯的話,請多多點贊支援哦。。。