為什么使用SQLite數(shù)據(jù)庫(kù)?
對(duì)于非常簡(jiǎn)單的應(yīng)用而言,使用文件作為持久化存儲(chǔ)通常就足夠了,但是大多數(shù)復(fù)雜的數(shù)據(jù)驅(qū)動(dòng)的應(yīng)用需要全功能的關(guān)系型數(shù)據(jù)庫(kù)。SQLite的目標(biāo)則是介于兩者之間的中小系統(tǒng)。它有以下特點(diǎn):
- 輕量級(jí)
- 速度快
- 無需部署
- 沒有服務(wù)器
- 很少或不需要進(jìn)行管理
SQLite正在迅速流行起來,并且它還適用于不同的平臺(tái)。Python 2.5中引入了SQLite數(shù)據(jù)庫(kù)適配器作為sqlite3模塊,這是Python首次將數(shù)據(jù)庫(kù)適配器納入到標(biāo)準(zhǔn)庫(kù)中。
SQLite被打包到Python的標(biāo)準(zhǔn)庫(kù)中,并不是因?yàn)樗绕渌麛?shù)據(jù)庫(kù)和適配器更加流行,而是因?yàn)樗?strong>足夠簡(jiǎn)單,像DBM模塊一樣使用文件(或內(nèi)存)作為其后端存儲(chǔ),不需要服務(wù)器,也沒有許可證的問題。它是Python中其他類似的持久化存儲(chǔ)解決方案的一個(gè)替代品,不過除此以外,它還擁有SQL接口。
在標(biāo)準(zhǔn)庫(kù)中擁有該模塊,可以使你在Python中使用SQLite開發(fā)更加快速,并且使你在有需要的時(shí)候,能夠更加容易地移植到更加強(qiáng)大的RDBMS(比如MySQL、PostgreSQL、Oracle或SQL Server)中。如果你不需要那些強(qiáng)大的數(shù)據(jù)庫(kù),那么sqlite3已經(jīng)是很好的選擇了。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26
