首頁 >後端開發 >Python教學 >如何用Python三行程式碼實現資料庫和Excel的導入導出?

如何用Python三行程式碼實現資料庫和Excel的導入導出?

WBOY
WBOY轉載
2023-04-25 20:01:061381瀏覽

如何用Python三行程式碼實現資料庫和Excel的導入導出?

資料庫->Excel

如何用Python三行程式碼實現資料庫和Excel的導入導出?

#我們先看一下資料庫裡面有一個 department這個部門表。這個表裡有六條數據,分別代表不同的部門。

接下來來看看這個Python程式碼,先匯入需要用到的函式庫SQLAlchemy,這是Python中最有名的ORM工具。

全名為Object Relational Mapping(物件關係對映)。

為什麼要使用SQLAlchemy?

它可以將你的程式碼從底層資料庫及其相關的SQL特性中抽像出來。

特點是操縱Python對象而非SQL查詢,也就是在程式碼層面考慮的是對象,而不是SQL,體現的是一種程式化思維,使得Python程式更加簡潔易讀。

具體使用方法如下:

from sqlalchemy import create_engine
import pandas as pd
# 创建数据库连接
engine = create_engine('mysql+pymysql://root:211314@localhost/hong')
# 读取mysql数据
db = pd.read_sql(sql='select * from hong.department', con=engine)
# 导出数据到excel
db.to_excel('部门数据.xlsx')

第一行程式碼就是先建立資料庫的連線。

我的mysql用戶名是root,密碼是211314,

因為這裡我啟動是啟動的是本地的資料庫服務,所以是localhost。

斜線後面跟的是這個資料庫的名稱hong

第二行程式碼就是使用pandas的read_sql()查詢mysql表department中的資料

第二行程式碼就是將查詢出來的資料透過pandas的to_excel()寫到本機

執行結果成功寫入本機excel檔案

如何用Python三行程式碼實現資料庫和Excel的導入導出?

#Excel->資料庫

接下來我們再看看如何將本地的xlsx資料寫入到mysql檔案中。

from sqlalchemy import create_engine
import pandas as pd
# 创建数据库连接
engine = create_engine('mysql+pymysql://root:211314@localhost/hong')
# 读取xlsx文件
df = pd.read_excel('模拟数据.xlsx')
# 导入到mysql数据库
df.to_sql(name='test_data', con=engine, index=False, if_exists='replace')

同樣第一行程式碼就是先建立資料庫的連線

第二行程式碼使用pandas的read_excel()讀取本機檔案。如下:

這是我用python的faker模擬出來的一百條資料

如何用Python三行程式碼實現資料庫和Excel的導入導出?

第三步驟使用pandas的to_sql()方法將讀取到的資料寫入到mysql中

程式碼執行完成後回傳mysql中我的hong資料庫發現多出了一個test_data的表。

打開看一下。那這個數據就跟本地的數據是一樣的。

所以。這裡我們用到三行程式碼從資料庫往excel匯入數據,又用了三行程式碼從excel匯入資料到資料庫。

總結一下:

雙向資料導入,都是3行程式碼即可實現。

從資料庫匯入資料到excel:

1、用sqlalchemy建立資料庫連線

2、用pandas的read_sql讀取資料庫的資料

##3 、用pandas的to_csv把資料存入csv檔

從excel到資料庫匯入資料:

1、用sqlalchemy建立資料庫連線

2、用pandas的read_csv讀取csv的資料

3、用pandas的to_sql把資料存入資料庫a

以上是如何用Python三行程式碼實現資料庫和Excel的導入導出?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除