久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

如何進(jìn)行SQLite數(shù)據(jù)庫(kù)管理相關(guān)命令的使用分析

共計(jì) 1968 個(gè)字符,預(yù)計(jì)需要花費(fèi) 5 分鐘才能閱讀完成。

這篇文章將為大家詳細(xì)講解有關(guān)如何進(jìn)行 SQLite 數(shù)據(jù)庫(kù)管理相關(guān)命令的使用分析,文章內(nèi)容質(zhì)量較高,因此丸趣 TV 小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

1. 創(chuàng)建數(shù)據(jù)庫(kù)

啟動(dòng)命令行,通過(guò)輸入如下命令打開(kāi) Shell 模式的 CLP:

sqlite3 test.db

雖然我們提供了數(shù)據(jù)庫(kù)名稱,但如果該數(shù)據(jù)庫(kù)不存在,SQLite 實(shí)際上就未創(chuàng)建該數(shù)據(jù)庫(kù),直到在數(shù)據(jù)庫(kù)內(nèi)部創(chuàng)建一些內(nèi)容時(shí),SQLite 才創(chuàng)建該數(shù)據(jù)庫(kù)。

2. 創(chuàng)建數(shù)據(jù)表

sqlite create table Member(id integer primary key, name text, age integer,addr text);

注:id 為主鍵,該列默認(rèn)具備自動(dòng)增長(zhǎng)的屬性。

3. 插入數(shù)據(jù)

sqlite insert into Member values(0, wwl ,21, 上海 //id= 0 的列必須不存在,否則會(huì)出錯(cuò)

或者 sqlite insert into Member(name,age,addr) values(wwl ,21, 上海

3. 查詢數(shù)據(jù)

sqlite .mode column

sqlite .headers on

sqlite select * from Member;

注:select 語(yǔ)句前面的兩個(gè)命令 (.headers 和.mode) 用于改善顯示格式,可以不要。

4. 創(chuàng)建視圖和索引

sqlite create view schema as select * from Member;

sqlite create index Member_Idx on Member(id)

5. 導(dǎo)出數(shù)據(jù)

使用.dump 命令可以將數(shù)據(jù)庫(kù)對(duì)象導(dǎo)出成 SQL 格式。不帶任何參數(shù)時(shí),.dump 將整個(gè)數(shù)據(jù)庫(kù)導(dǎo)出為數(shù)據(jù)庫(kù)定義語(yǔ)言 (DDL) 和數(shù)據(jù)庫(kù)操作語(yǔ)言 (DML) 命令,適合重新創(chuàng)建數(shù)據(jù)庫(kù)對(duì)象和其中的數(shù)據(jù)。如果提供了參數(shù),Shell 將參數(shù)解析作為表名或視圖,導(dǎo)出任何匹配給定參數(shù)的表或視圖,那些不匹配的將被忽略。

默認(rèn)情況下.dump 命令的輸出定向到屏幕。如:.dump

如果要將輸出重定向到文件,請(qǐng)使用.dump[filename]命令,此命令將所有的輸出重定向到指定的文件中。若要恢復(fù)到屏幕的輸出,只需要執(zhí)行.output stdout 命令就 OK 了。

sqlite .output file.sql

sqlite .dump

sqlite .output stdout

注:如果 file.sql 不存在,將在當(dāng)前工作目錄中創(chuàng)建該文件。如果文件存在,它將被覆蓋。

6. 導(dǎo)入數(shù)據(jù)

有兩種方法可以導(dǎo)入數(shù)據(jù),用哪種方法取決于要導(dǎo)入的文件格式。如果文件由 SQL 語(yǔ)句構(gòu)成,可以使用.read 命令導(dǎo)入文件中包含的命令。如果文件中包含由逗號(hào)或其他分隔符分割的值 (comma-swparated values,CSV) 組成,可使用.import 下載地址 [table] 命令,此命令將解析指定的文件并嘗試將數(shù)據(jù)插入到指定的表中。

.read 命令用來(lái)導(dǎo)入.dump 命令創(chuàng)建的文件。如果使用前面作為備份文件所導(dǎo)出的 file.sql,需要先移除已經(jīng)存在的數(shù)據(jù)庫(kù)對(duì)象,然后用下面的方法重新導(dǎo)入:

sqlite drop table Member;

sqlite drop view schema;

sqlite .read file.sql

7. 備份數(shù)據(jù)庫(kù)

有兩種方式可以完成數(shù)據(jù)庫(kù)的備份,具體使用哪一種取決于你希望的備份類型。SQL 轉(zhuǎn)儲(chǔ)許是移植性最好的備份。

生成轉(zhuǎn)儲(chǔ)的標(biāo)準(zhǔn)方式是使用 CLP.dump 命令:sqlite3 test.db .dump test.sql

在 Shell 中,可以將輸出重定向到外部文件,執(zhí)行命令,恢復(fù)到屏幕輸出,如:

sqlite .output file.sql

sqlite .dump

sqlite .output stdout

sqlite .exit

同樣,容易將 SQL 轉(zhuǎn)儲(chǔ)作為 CLP 的輸入流實(shí)現(xiàn)數(shù)據(jù)庫(kù)導(dǎo)入:

sqlite3 test.db test.sql

備份二進(jìn)制數(shù)據(jù)庫(kù)知識(shí)比復(fù)制文件稍多做一點(diǎn)工作。備份之前需要清理數(shù)據(jù)庫(kù),這樣可以釋放一些已刪除對(duì)象不再使用的空間。這數(shù)據(jù)庫(kù)文件就會(huì)變小,因此二進(jìn)制的副本也會(huì)較小:

sqlite3 test.db vacuum

cp test.db test.Backup

8. 其它命令

sqlite select last_insert_rowid(); // 獲得最后插入的自動(dòng)增長(zhǎng)量值

sqlite .tabes // 返回所有的表和視圖

sqlite .indices Member // 查看一個(gè)表的索引

sqlite .schema Member // 得到一個(gè)表或視圖的定義 (DDL) 語(yǔ)句, 如果沒(méi)有提供表名, 則返回所有數(shù)據(jù)庫(kù)對(duì)象 (table,view,index,triger) 的定義語(yǔ)句

關(guān)于如何進(jìn)行 SQLite 數(shù)據(jù)庫(kù)管理相關(guān)命令的使用分析就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-17發(fā)表,共計(jì)1968字。
轉(zhuǎn)載說(shuō)明:除特殊說(shuō)明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒(méi)有評(píng)論)
主站蜘蛛池模板: 大厂| 广丰县| 丹阳市| 靖西县| 长治市| 高安市| 海宁市| 曲周县| 会东县| 华宁县| 来凤县| 涟水县| 晴隆县| 灌云县| 随州市| 丰原市| 兴化市| 昌乐县| 申扎县| 托克逊县| 襄城县| 江油市| 苗栗市| 西和县| 太保市| 兴城市| 康平县| 五大连池市| 阜新| 贵港市| 微山县| 太湖县| 天镇县| 凤翔县| 益阳市| 明水县| 花莲市| 获嘉县| SHOW| 巴塘县| 启东市|