首頁技術(shù)文章正文

Python培訓:讀寫數(shù)據(jù)庫

更新時間:2022-07-11 來源:黑馬程序員 瀏覽量:

IT培訓班

  大多數(shù)情況下,海量的數(shù)據(jù)是使用數(shù)據(jù)庫進行存儲的,這主要是依賴于數(shù)據(jù)庫的數(shù)據(jù)結(jié)構(gòu)化、數(shù)據(jù)共享性、獨立性等特點。因此,在實際生產(chǎn)環(huán)境中,絕大多數(shù)數(shù)據(jù)都是存儲在數(shù)據(jù)庫中。Pandas支持MySQL、Oracle、SQLite等主流數(shù)據(jù)庫的讀寫操作。

  為了高效地對數(shù)據(jù)庫中的數(shù)據(jù)進行讀取,這里需要引入SQLAlchemy。SQLALchemy是使用Python編寫的一款開源軟件,它提供的SQL工具包和對象映射工具能夠高效地訪問數(shù)據(jù)庫。在使用SQLAlchemy時需要使用相應的連接工具包,比如MySQL需要安裝mysqlconnector,Oracle則需要安裝cx_oracle。

  Pandas的io.sql模塊中提供了常用的讀寫數(shù)據(jù)庫函數(shù),具體如下。

  1.read_sql_table():讀取的整張數(shù)據(jù)表中的數(shù)據(jù)轉(zhuǎn)換成DataFrame對象。

  2.read_sql_query():將SQL語句讀取的結(jié)果轉(zhuǎn)換成DataFrame對象。

  3.read_sql():上述兩個函數(shù)的結(jié)合,既可以讀數(shù)據(jù)表也可以讀SQL語句。

  4.to_sql():將數(shù)據(jù)寫入到SQL數(shù)據(jù)庫中。

  上述列舉了各個函數(shù)的具體功能。其中,read_sql_table()函數(shù)與read_sql_query()函數(shù)都可以將讀取的數(shù)據(jù)轉(zhuǎn)換為DataFrame對象,前者表示將整張表的數(shù)據(jù)轉(zhuǎn)換成DataFrame,后者則表示將執(zhí)行SQL語句的結(jié)果轉(zhuǎn)換為DataFrame對象。

  注意:在連接MySQL數(shù)據(jù)庫時,這里使用的是mysqlconnector驅(qū)動,如果當前的Python環(huán)境中沒有該模塊,則需要使用pip install mysql-connector命令安裝該模塊。

分享到:
在線咨詢 我要報名
和我們在線交談!