久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

Python操控mysql批量插入數據的實現方法

瀏覽:4日期:2022-07-07 09:05:56

在Python中,通過pymysql模塊,編寫簡短的腳本,即方便快捷地控制MySQL數據庫

一、連接數據庫

使用的函數:pymysql.connect

語法:db=pymysql.connect(host=’localhost’,user=’root’,port=3306,password=’Your password’,db=’database_name’)

Python操控mysql批量插入數據的實現方法

參數說明:host:MySQL服務器地址 user:用戶名 password:MySQL登錄密碼 port:MySQL服務器端口號 db:需要連接的數據庫名通常服務器地址、用戶名、端口號都是上述的默認值

二、創建表

連接完數據庫后,我們需要使用db.cursor()獲取數據庫的操作游標

cur=db.cursor()

接著使用execute()語句即可執行SQL語句.我們以創建學生成績表來進行演示:

import pymysqldb=pymysql.connect(host=’localhost’,user=’root’,password=’123456’,port=3306,db=’work1’)cur=db.cursor() ##獲取游標sql=’create table grade(id varchar(10),name varchar(10),age int,score int,class varchar(10))’cur.execute(sql)

打開Navicat查看表的情況如下:

Python操控mysql批量插入數據的實現方法

學生成績表創建成功!

三、批量插入數據

創建完表后,接下來就是插入數據…而插入數據又可以分為兩種方式:按行插入和一次性,我們將依次介紹。

按行插入

id=[’101’,’102’,’103’,’104’,’105’,’106’,’107’,’108’,’109’,’110’]name=[’諸葛亮’,’劉備’,’周瑜’,’張飛’,’關羽’,’呂布’,’貂蟬’,’黃忠’,’馬超’,’典韋’]age=[28,30,27,26,28,28,24,26,23,18]score=[89,56,78,60,40,33,90,95,86,82]class_=[’一班’,’一班’,’一班’,’二班’,’二班’,’二班’,’三班’,’三班’,’三班’,’三班’]sql=’insert into grade values(%s,%s,%s,%s,%s)’for i in range(0,len(id)): cur.execute(sql,(id[i],name[i],age[i],score[i],class_[i]))db.commit() #一定要提交數據!!不然在數據庫中是沒有數據顯示的

一次性插入

data=((id[i],name[i],age[i],score[i],class_[i]) for i in range(0,len(id)))sql=’insert into grade values(%s,%s,%s,%s,%s)’cur.executemany(sql,data)db.commit()

插入數據后,表grade內容如下:

Python操控mysql批量插入數據的實現方法

四、更多

根據以上步驟,我們可知只要在execute語句中放入相應的SQL語句,即可實現對數據庫的各種操作。而在pymysql中實現查詢數據操作后,還需通過對游標對象使用.fetchall()方法來返回查詢結果。

查詢目標:篩選出各班的平均分并以降序進行排列

sql=’select class,avg(score) from grade group by class order by avg(score) desc’cur.execute(sql)rst=cur.fetchall()print(rst)

Python操控mysql批量插入數據的實現方法

從輸出結果可知,元素是以tuple的方式進行儲存的。我們可以轉為更多規范的格式查看:

import pandas as pddf=pd.DataFrame(list(rst),columns=[’班級’,’平均分’])df

Python操控mysql批量插入數據的實現方法

完成各項操作后,不要忘記斷開與數據庫的連接:

db.close()

以上就是本次分享的全部內容~

附錄:python MySQL 批量插入

在現實生活中,經常會使用到Python 將信息清洗完后插入數據庫,但一條條插入勢必速度效率跟不上,此時將需要使用批量插入的思維。

# coding:utf-8import pymysql # 打開數據庫連接db = pymysql.connect(host=’localhost’, port=3306, user=’username’, passwd=’password’, db=’database_name’, charset=’utf8’) # 使用cursor()方法獲取操作游標cursor = db.cursor() # SQL 插入語句sql = 'INSERT INTO EMPLOYEE(FIRST_NAME, AGE, SEX) VALUES (%s,%s,%s)'# 一個tuple或者listT = ((’xiaoming’, 31, ’boy’), (’hong’, 22, ’girl’), (’wang’, 90, ’man’)) try: # 執行sql語句 cursor.executemany(sql, T) # 提交到數據庫執行 db.commit()except : # 如果發生錯誤則回滾 db.rollback()# 關閉游標cursor.close()# 關閉數據庫連接db.close()

到此這篇關于Python操控mysql批量插入數據的實現方法的文章就介紹到這了,更多相關Python mysql批量插入數據內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 色精品 | 欧美 日本 国产 | 成人不卡 | 91精品久久久久 | 中国大陆高清aⅴ毛片 | 91免费版在线观看 | 亚洲精品视频一区二区三区 | 国产成人一区二区三区 | 欧美日韩视频在线第一区 | 日韩一区二区三区在线观看 | 成人三级视频网站 | 欧美高清一区 | 国产精品久久国产精麻豆99网站 | 日韩欧美成人影院 | a免费在线| 国产一区二区久久 | 国产美女自拍视频 | 午夜精品91 | 日韩中文字幕 | 国产精品国产三级国产aⅴ中文 | 69av.com | 国产一区二区精品久久 | 国产在线观看一区二区三区 | 欧美日韩国产精品久久久久 | 日韩在线亚洲 | 国产一级黄色大片 | 天天爱天天草 | 精品久久久久久一区二区 | 中文字幕精品一区二区三区精品 | 不卡黄色| 99久久夜色精品国产亚洲1000部 | 日韩视频在线观看一区 | 国产一区二区三区网站 | 久久精品国产v日韩v亚洲 | 一级电影免费在线观看 | 欧美日韩亚洲二区 | 国产精品久久久久毛片软件 | 日本中文字幕电影 | www,久久久| 精品一区二区三区在线观看 | 黄色小视频在线观看 |