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