乙個小時內學習 SQLite 資料庫

2021-09-02 11:52:29 字數 4707 閱讀 1133

1. 介紹

sqlite 是乙個開源的嵌入式關聯式資料庫,實現自包容、零配置、支援事務的sql資料庫引擎。 其特點是高度便攜、使用方便、結構緊湊、高效、可靠。 與其他資料庫管理系統不同,sqlite 的安裝和執行非常簡單,在大多數情況下 - 只要確保sqlite的二進位制檔案存在即可開始建立、連線和使用資料庫。如果您正在尋找乙個嵌入式資料庫專案或解決方案,sqlite是絕對值得考慮。

2. 安裝

sqlite on windows

注意: 是 sqlite 的編譯版本號

sqlite on linux

在 多個 linux 發行版提供了方便的命令來獲取 sqlite:?

12

3

4

5

/* for debian or ubuntu /*

$sudoapt-getinstallsqlite3 sqlite3-dev

/* for redhat, centos, or fedora/*

$ yuminstallsqlite3 sqlite3-dev

sqlite on mac os x

如果你正在使用 mac os 雪豹或者更新版本的系統,那麼系統上已經裝有 sqlite 了。

3. 建立首個 sqlite 資料庫

現在你已經安裝了 sqlite 資料庫,接下來我們建立首個資料庫。在命令列視窗中輸入如下命令來建立乙個名為  test.db 的資料庫。?

1sqlite3test.db

建立表:?

12

3

sqlite> create table mytable(idinteger primary key, value text);

2 columns were created.

該錶包含乙個名為 id 的主鍵欄位和乙個名為 value 的文字字段。

注意: 最少必須為新建的資料庫建立乙個表或者檢視,這麼才能將資料庫儲存到磁碟中,否則資料庫不會被建立。

接下來往表裡中寫入一些資料:?

12

3

4

sqlite>insertintomytable(id, value)values(1,'micheal');

sqlite>insertintomytable(id, value)values(2,'jenny');

sqlite>insertintomytable(value)values('francis');

sqlite>insertintomytable(value)values('kerk');

查詢資料: ?

12

3

4

5

sqlite>select*fromtest;

1|micheal

2|jenny

3|francis

4|kerk

設定格式化查詢結果: ?

12

3

4

5

6

7

8

9

sqlite> .modecolumn;

sqlite> .headeron;

sqlite>select*fromtest;

id          value

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

1           micheal

2           jenny

3           francis

4           kerk

.mode column 將設定為列顯示模式,.header 將顯示列名。

修改表結構,增加列:?

1sqlite>altertablemytableaddcolumnemail textnotnull''collatenocase;;

建立檢視: ?

1sqlite>createviewnameviewasselect*frommytable;

建立索引: ?

1sqlite>createindextest_idxonmytable(value);

4. 一些有用的 sqlite 命令

顯示表結構:

sqlite> .schema [table]

獲取所有表和檢視:

sqlite 

> .tables 

獲取指定表的索引列表:

sqlite 

> .indices 

[table 

]

匯出資料庫到 sql 檔案:

sqlite 

> .output 

[filename 

] sqlite 

> .dump 

sqlite 

> .output stdout

從 sql 檔案匯入資料庫:

sqlite 

> .read 

[filename 

]

格式化輸出資料到 csv 格式:

sqlite 

>.output 

[filename.csv 

] sqlite 

>.separator , 

sqlite 

select 

* from 

test; 

sqlite 

>.output stdout

從 csv 檔案匯入資料到表中:

sqlite 

>create table newtable 

( id integer primary key, value text 

); sqlite 

>.import 

[filename.csv 

] newtable 

備份資料庫:

/* usage: sqlite3 [database] .dump > [filename] */

sqlite3 mytable.db .dump > backup.sql

恢復資料庫:

/* usage: sqlite3 

[database 

] < 

[filename 

] */ 

sqlite3 mytable.db 

< backup.sql

英文原文,oschina原創翻譯

乙個小時內學習SQLite資料庫

1.介紹 sqlite 是乙個開源的嵌入式關聯式資料庫,實現自包容 零配置 支援事務的sql資料庫引擎。其特點是高度便攜 使用方便 結構緊湊 高效 可靠。與其他資料庫管理系統不同,sqlite 的安裝和執行非常簡單,在大多數情況下 只要確保sqlite的二進位制檔案存在即可開始建立 連線和使用資料庫...

乙個小時內學習SQLite資料庫

2012 05 11 10 24 紅薯 oschina 字型大小 t t sqlite 是乙個開源的嵌入式關聯式資料庫,實現自包容 零配置 支援事務的sql資料庫引擎。其特點是高度便攜 使用方便 結構緊湊 高效 可靠。與其他資料庫管理系統不同,sqlite 的安裝和執行非常簡單,在大多數情況下 只要...

乙個小時內學習SQLite資料庫

sqlite 是乙個開源的嵌入式關聯式資料庫,實現自包容 零配置 支援事務的sql資料庫引擎。其特點是高度便攜 使用方便 結構緊湊 高效 可靠。與其他資料庫管理系統不同,sqlite 的安裝和執行非常簡單,在大多數情況下 只要確保sqlite的二進位制檔案存在即可開始建立 連線和使用資料庫。如果您正...