標籤:
14.1 什麼是資料庫
資料庫一種儲存結構資料的檔案。絕大多數資料庫類似字典——映射鍵和值的關係。最大的區別是資料庫是儲存在硬碟或其它永久性的儲存上,所以在程式結束後它仍然存在。而儲存在記憶體中的字典容量受限於電腦的記憶體配置,所以資料庫可以比字典儲存更多的資料。
類似字典,資料庫軟體在插入和訪問資料時非常迅速,即使是龐大的資料。通過建立資料索引,資料庫軟體維持它的效能,並允許電腦快速跳至一個特定入口。
目前有很多不同目的的資料庫系統,包括:Oracle, MySQL, 微軟的SQL Server, PostgreSQL和SQLite。因為SQLite是一個常用資料庫,且在Python中內建,所以本書重點關注SQLite。SQLite被設計用於內嵌應用程式,為應用程式提供資料庫支援。例如Firefox瀏覽器和其它產品一樣,在內部使用SQLite資料庫。
你可以訪問 http://sqlite.org/ 獲得更多SQLite 的資訊。
SQLite非常適合在資訊學中處理解決問題的資料,例如在本章中我們描述的Twitter爬蟲軟體。
14.2 資料庫的概念
當你第一次看到資料庫,它看起來像由多張表組成的試算表。資料庫中主要的資料結構有:表、行和列。在關聯式資料庫的技術說明中,表、行和列被更正式的稱為關係、元組和屬性。在本章我們使用非正式的術語。
14.3 SQLite管理器-Firefox外掛程式
雖然本章的重點是使用Python來操作SQLite資料庫中的資料,但是使用一個叫做SQLite Database Manager的Firefox外掛程式可以更加便捷地完成操作。這個外掛程式可以免費從以下地址擷取:
https://addons.mozilla.org/en-us/firefox/addon/sqlite-manager/
你可以輕鬆地利用瀏覽器在資料庫中建立表,插入和編輯資料,或者運行簡單的SQL查詢。
在某種程度上,資料庫管理員類似於處理文字檔的文字編輯器。當你想著一個文字檔上做一個或者很多的操作時,你可以直接用一個文字編輯器開啟它,並進行修改。但當你有很多對方需要修改時,經常性你會編寫一個簡單的Python程式。當你進行資料庫處理時,你會發現相同的模式。你會用資料庫管理員做簡單的操作,而用更便捷的Python程式來做更加複雜的操作。
註:文章原文為Dr. Charles Severance 的 《Python for Informatics》。
Python for Infomatics 第14章 資料庫和SQL的應用一(譯)