SQLite3學習筆記(1)

命令:sql

DDL-數據定義:數據庫

CREATE -- 建立一個新的表,一個表的視圖,或者數據庫中的其餘對象ide

ALTER -- 修改數據庫中的某個已有的數據對象,好比一個表ui

DROP -- 刪除整個表,或者表的視圖,或者數據庫中的其餘對象編碼

DML - 數據操做:spa

INSERT -- 建立一條記錄命令行

UPDATE -- 修改記錄code

DELETE -- 刪除記錄sqlite

DQL - 數據查詢:對象

SELECT -- 從一個或多個表中檢索某些記錄

 


 

可使用 . help 命令來獲取各類重要的SQLite 點命令的列表;

可使用 .show 命令來獲取SQLite命令提示符的默認設置;

sqlite> .show
        echo: off
         eqp: off
     explain: auto
     headers: off
        mode: list
   nullvalue: ""
      output: stdout
colseparator: "|"
rowseparator: "\n"
       stats: off
       width:
    filename: :memory:
.show

 

也可使用屬性的方法改變設置

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

 

SQLite 存儲類:

NULL 值是一個 NULL 值
INTEGER 值是一個帶符號的整數根據值的大小,存儲在 一、二、三、四、6 或 8 字節中。
REAL 值是一個浮點值,存儲爲 8 字節的 IEEE 浮點數字。
TEXT 值是一個文本字符串,使用數據庫編碼(UTF-八、UTF-16BE 或 UTF-16LE)存儲。
BLOB

值是一個 blob 數據,徹底根據它的輸入存儲。



 

使用命令 sqlite3 testDB.db 來建立一個新的數據庫

E:\SQLite3>sqlite3 testDB.db
SQLite version 3.25.0 2018-09-15 04:01:47
Enter ".help" for usage hints.

 

一旦數據庫被建立,就可使用 .databases 命令來查看它是否在數據庫列表中

sqlite> .databases
main: E:\SQLite3\testDB.db

 

可使用 .quit 命令退出 sqlite提示符

sqlite> .quit

E:\SQLite3>

 

能夠在命令行中使用 SQLite.dump 點命令來導出完整的數據庫在一個文本文件中

E:\SQLite3>sqlite3 testDB.db .dump > testDB.sql

 

上面的命令將轉換整個 testDB.db 數據庫的內容到 SQLite 的語句中,並將其轉儲到 testDB.sql 中。你能夠經過簡單的方式從生產的testDB.db 恢復

E:\SQLite3>sqlite3 testDB.db < testDB.sql

 

此時的數據庫是空的,一旦數據庫中有表和數據,能夠進行嘗試。

 


 

若是想要附加一個現有的數據庫 testDB.db ,則 ATTACH DATABASE 語句將以下所示

sqlite> ATTACH DATABASE 'testDB.db' as 'TEST';

 

使用 .database 命令來顯示附加的數據庫

sqlite> .database
main:
TEST: E:\SQLite3\testDB.db

 

數據庫名稱 main 和temp 被保留用於主數據庫和存儲臨時表及其它臨時數據對象的數據庫。這兩個數據庫名稱能夠用於每一個數據庫鏈接,且不該該被用於附加,不然將獲得一個警告消息。

 


 

SQLite的 DETACH DTABASE 語句是用來把命名數據庫從一個數據庫鏈接分離和遊離出來,鏈接是以前使用 ATTACH 語句附加的。若是同一個數據庫文件已經被附加上多個別名,DETACH 命令將只斷開給定名稱的鏈接,而其他的仍然有效。您沒法分離 main 或 temp 數據庫。

若是數據庫是在內存中或者是臨時數據庫,則該數據庫將被摧毀,且內容將會丟失。

SQLite 的 DETACH DATABASE 的基本語句的基本語法以下:

DETACH DATABASE 'Alias-Name';

 

假設已經建立一個數據庫並給他附加了‘TEST’ 和 ‘XING',使用.database 命令,咱們能夠看到以下:

main:
TEST: E:\SQLite3\testDB.db
XING: E:\SQLite3\testDB.db

 

如今嘗試把'XING' 從 testDB.db 中分離出來,以下:

sqlite> DETACH DATABASE 'XING';

 

若是如今再次檢查,會發現testDB.db 任與 main 保持鏈接

sqlite> .database
main:
TEST: E:\SQLite3\testDB.db
相關文章
相關標籤/搜索