Python之csv文件從MySQL數(shù)據(jù)庫導入導出的方法
Python從MySQL數(shù)據(jù)庫中導出csv文件處理
csv文件導入MySQL數(shù)據(jù)庫
import pymysql
import csv
import codecs
def get_conn():
conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='root', db='test_csv', charset='utf8')
return conn
def insert(cur, sql, args):
cur.execute(sql, args)
def read_csv_to_mysql(filename):
with codecs.open(filename=filename, mode='r', encoding='utf-8') as f:
reader = csv.reader(f)
head = next(reader)
conn = get_conn()
cur = conn.cursor()
sql = 'insert into tb_csv values(%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)'
for item in reader:
if item[1] is None or item[1] == '': # item[1]作為唯一鍵,不能為null
continue
args = tuple(item)
print(args)
insert(cur, sql=sql, args=args)
conn.commit()
cur.close()
conn.close()
if __name__ == '__main__':
read_csv_to_mysql('1.csv')
注:
1.csv文件的表頭如:
序號,合同編號,義務人,檔案柜號,柜內(nèi)編號,權(quán)利人,放款金額,放款日期,他項權(quán)利證編號,抵押物地址,結(jié)清出庫日期,備注,地區(qū)
mysql的創(chuàng)建tb_csv表語句
CREATE TABLE tb_csv( xuhao VARCHAR(20), htcode VARCHAR(20), yiwuren VARCHAR(20), dagh VARCHAR(20), gncode VARCHAR(20), quanliren VARCHAR(20), fkmoney VARCHAR(20), fkdata VARCHAR(20), qitacode VARCHAR(20), diyaaddr VARCHAR(100), jqdata VARCHAR(30), beizhu VARCHAR(30), zone VARCHAR(30), PRIMARY KEY(htcode) )CHARSET=utf8;
這里為了省事,表中的字段都指明varchar類型
MySQL數(shù)據(jù)庫寫入csv文件
import pymysql
import csv
import codecs
def get_conn():
conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='root', db='test_csv', charset='utf8')
return conn
def query_all(cur, sql, args):
cur.execute(sql, args)
return cur.fetchall()
def read_mysql_to_csv(filename):
with codecs.open(filename=filename, mode='w', encoding='utf-8') as f:
write = csv.writer(f, dialect='excel')
conn = get_conn()
cur = conn.cursor()
sql = 'select * from tb_csv'
results = query_all(cur=cur, sql=sql, args=None)
for result in results:
print(result)
write.writerow(result)
if __name__ == '__main__':
read_mysql_to_csv('2.csv')
以上這篇Python之csv文件從MySQL數(shù)據(jù)庫導入導出的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python使用gmplot創(chuàng)建動態(tài)地圖可視化
gmplot 是一個 Python 庫,用于基于 Google Maps 的靜態(tài)地圖生成可視化,它提供簡單的 API 來繪制標記、路徑、熱力圖等地理信息數(shù)據(jù),本文給大家介紹了如何使用 gmplot 在 Python 中創(chuàng)建動態(tài)地圖可視化,需要的朋友可以參考下2024-12-12
selenium+python實現(xiàn)1688網(wǎng)站驗證碼圖片的截取功能
這篇文章主要介紹了selenium+python實現(xiàn)1688網(wǎng)站驗證碼圖片的截取,需要的朋友可以參考下2018-08-08
Python調(diào)用ollama本地大模型進行批量識別PDF
現(xiàn)在市場上有很多PDF文件的識別,然而隨著AI的興起,本地大模型的部署,這些成為一種很方便的方法,本文我們就來看看Python如何調(diào)用ollama本地大模型進行PDF相關(guān)操作吧2025-03-03
python實現(xiàn)網(wǎng)站微信登錄的示例代碼
這篇文章主要介紹了python實現(xiàn)網(wǎng)站微信登錄的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-09-09
Python+Jmeter實現(xiàn)自動化性能壓測的流程步驟
性能測試是一個全棧工程師/架構(gòu)師必會的技能之一,只有學會性能測試,才能根據(jù)得到的測試報告進行分析,找到系統(tǒng)性能的瓶頸所在,而這也是優(yōu)化架構(gòu)設計中重要的依據(jù),本文給大家介紹了Python+Jmeter實現(xiàn)自動化性能壓測的流程步驟,需要的朋友可以參考下2024-05-05

