如何利用 thinkorm 快速實作資料庫的資料匯入和匯出
引言:
在實際開發過程中,資料的匯入和匯出是一個常見的需求。 thinkorm 是一個開源的 Python ORM 框架,可以方便地操作資料庫。本文將介紹如何利用 thinkorm 快速實現資料庫的資料匯入和匯出功能,並提供程式碼範例。
一、安裝 thinkorm
首先,請確保您已經安裝了 Python 環境。在命令列中執行以下命令安裝 thinkorm:
pip install thinkorm
二、連接資料庫
在使用 thinkorm 之前,我們需要先連接資料庫。以MySQL 資料庫為例,可以使用以下程式碼進行連線:
from thinkorm import Database # 创建数据库连接 db = Database(host='localhost', port=3306, user='root', password='password', database='test')
三、匯入資料
bulk_create
方法可以快速匯入資料。我們可以先將資料儲存成 CSV 文件,然後使用 bulk_create
方法將資料匯入資料庫。 以下是一個範例:
from thinkorm import Model, Field # 创建模型 class User(Model): id = Field() name = Field() age = Field() # 读取 CSV 文件 data = [] with open('data.csv', 'r') as f: lines = f.readlines() for line in lines: values = line.strip().split(',') data.append(User(id=int(values[0]), name=values[1], age=int(values[2]))) # 导入数据 User.bulk_create(data)
以下是一個範例:
import pandas as pd from thinkorm import Model, Field # 创建模型 class User(Model): id = Field() name = Field() age = Field() # 读取 Excel 文件 data = pd.read_excel('data.xlsx') # 转换数据为模型对象 data = [User(id=int(row[0]), name=row[1], age=int(row[2])) for row in data.values] # 导入数据 User.bulk_create(data)
四、匯出資料
all
方法可以取得表中所有數據,我們可以將數據匯出為CSV 檔案。 以下是一個範例:
# 导出数据 data = User.all() with open('data.csv', 'w') as f: for row in data: f.write(f"{row.id},{row.name},{row.age} ")
以下是一個範例:
import pandas as pd # 导出数据 data = User.all() # 转换数据为 DataFrame data = pd.DataFrame([(row.id, row.name, row.age) for row in data], columns=['id', 'name', 'age']) # 导出为 Excel 文件 data.to_excel('data.xlsx', index=False)
總結:
本文介紹如何利用 thinkorm 快速實作資料庫的資料匯入和匯出功能。透過使用 bulk_create
方法,我們可以方便地從 CSV 檔案或 Excel 檔案匯入資料;而透過使用 all
方法,我們可以將資料匯出為 CSV 檔案或 Excel 檔案。這些方法可以幫助我們有效率地處理數據,並提升開發效率。
以上是如何利用thinkorm快速實現資料庫的資料導入和匯出的詳細內容。更多資訊請關注PHP中文網其他相關文章!