為什么使用SQLite數(shù)據(jù)庫?
對于非常簡單的應用而言,使用文件作為持久化存儲通常就足夠了,但是大多數(shù)復雜的數(shù)據(jù)驅(qū)動的應用需要全功能的關(guān)系型數(shù)據(jù)庫。SQLite的目標則是介于兩者之間的中小系統(tǒng)。它有以下特點:
- 輕量級
- 速度快
- 無需部署
- 沒有服務器
- 很少或不需要進行管理
SQLite正在迅速流行起來,并且它還適用于不同的平臺。Python 2.5中引入了SQLite數(shù)據(jù)庫適配器作為sqlite3模塊,這是Python首次將數(shù)據(jù)庫適配器納入到標準庫中。
SQLite被打包到Python的標準庫中,并不是因為它比其他數(shù)據(jù)庫和適配器更加流行,而是因為它足夠簡單,像DBM模塊一樣使用文件(或內(nèi)存)作為其后端存儲,不需要服務器,也沒有許可證的問題。它是Python中其他類似的持久化存儲解決方案的一個替代品,不過除此以外,它還擁有SQL接口。
在標準庫中擁有該模塊,可以使你在Python中使用SQLite開發(fā)更加快速,并且使你在有需要的時候,能夠更加容易地移植到更加強大的RDBMS(比如MySQL、PostgreSQL、Oracle或SQL Server)中。如果你不需要那些強大的數(shù)據(jù)庫,那么sqlite3已經(jīng)是很好的選擇了。