欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python向MySQL數(shù)據庫插入數(shù)據的操作方法

 更新時間:2022年11月30日 09:15:09   作者:測試運維小猴子  
這篇文章主要介紹了python向MySQL數(shù)據庫插入數(shù)據,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

我在這里用的是python中pymysql連接MySQL數(shù)據庫,如果電腦中沒有安裝pymysql,可以直接再命令行通過 pip install pymysql 安裝

一、通過python腳本向mysql數(shù)據庫插入單條數(shù)據

寫sql語句時,不管字段為什么類型,占位符統(tǒng)一使用%s
這里記錄兩種插入單條數(shù)據的方式:
1、直接用execute方法執(zhí)行sql語句

#導入pymysql包
import pymysql
# 創(chuàng)建數(shù)據庫連接
conn = pymysql.connect(host="localhost",port=3306,user="root",passwd="123456",db="test1" )
#獲取一個游標對象
cursor=conn.cursor()
#執(zhí)行數(shù)據庫插入操作
cursor.execute('insert into student(id,name,age) values (123456,"tom",12)')
#提交
conn.commit()
#關閉連接
conn.close()
cursor.close()

2、將sql語句單獨出來,在語句中用%s做占位符

#導入pymysql包
import pymysql
# 創(chuàng)建數(shù)據庫連接
conn = pymysql.connect(host="localhost",port=3306,user="root",passwd="123456",db="test1" )
#獲取一個游標對象
cursor=conn.cursor()
#sql語句中,用%s做占位符,參數(shù)用一個元組
sql="insert into student values(%s,%s,%s)"
param=(23456,'lilei',20)
#執(zhí)行數(shù)據庫插入
cursor.execute(sql,param)
#提交
conn.commit()
#關閉連接
conn.close()
cursor.close()

二、通過python腳本向mysql數(shù)據庫批量插入數(shù)據

這里記錄兩種批量插入數(shù)據的方式:
1、通過execute,用for語句循環(huán)

#導入pymysql包
import pymysql
# 創(chuàng)建數(shù)據庫連接
conn = pymysql.connect(host="localhost",port=3306,user="root",passwd="123456",db="test1" )
#獲取一個游標對象
cursor=conn.cursor()
#設置參數(shù)i,for語句循環(huán)
for i in range(1,10):
    param=str(i)
    sql="insert into student values(%s,'yy',20)"
    cursor.execute(sql,param)
    conn.commit()
#關閉連接
conn.close()
cursor.close()

2、通過executemany,數(shù)據的格式必須為list[tuple(),tuple(),tuple()]或者tuple(tuple(),tuple(),tuple())

import pymysql
# 打開數(shù)據庫連接
conn = pymysql.connect(host="localhost",port=3306,user="root",passwd="123456",db="test1" )
# 使用cursor()方法獲取操作游標
cursor = conn.cursor()
#批量插入數(shù)據
sql="insert into student values(%s,%s,%s)"
#每一個值都作為一個元組,整個參數(shù)集作為一個元組
param=((111111,'haha',13),(22222,'hehe',34))
#或者每一個值作為元組,整個參數(shù)集作為list :param=[(111111,'haha',13),(22222,'hehe',34)]
#使用executemany方法批量插入數(shù)據
cursor.executemany(sql,param)
#提交
conn.commit()
#關閉
conn.close()
cursor.close()

三、cursor執(zhí)行命令的方法

1、 callproc(self, procname, args):用來執(zhí)行存儲過程,接收的參數(shù)為存儲過程名和參數(shù)列表,返回值為受影響的行數(shù)
2、 execute(self, query, args):執(zhí)行單條sql語句,接收的參數(shù)為sql語句本身和使用的參數(shù)列表,返回值為受影響的行數(shù)
3、executemany(self, query, args):執(zhí)行單挑sql語句,但是重復執(zhí)行參數(shù)列表里的參數(shù),返回值為受影響的行數(shù)
4、nextset(self):移動到下一個結果集

四、cursor接受返回值的方法

1、 fetchall(self):接收全部的返回結果行.
2、 fetchmany(self, size=None):接收size條返回結果行.如果size的值大于返回的結果行的數(shù)量,則會返回cursor.arraysize條數(shù)據.
3、 fetchone(self):返回一條結果行.
4、 scroll(self, value, mode=‘relative’):移動指針到某一行.如果mode=‘relative’,則表示從當前所在行移動value條,如果mode=‘absolute’,則表示從結果集的第一 行移動value條.

五、cursor執(zhí)行查詢語句并返回結果

#執(zhí)行查詢的操作
 cursor.execute("select * from cdinfo")
#用fetcall方法獲取查詢返回的全部結果,將結果保存到tup,每條結果都是元組類型,所有的元組組成了一個元組集
 tup=cursor.fetchall()
 print(tup)#輸出整個結果 
 print tup[0][3]#輸出元組集中,第一個元組的第四個元素

到此這篇關于python向MySQL數(shù)據庫插入數(shù)據的文章就介紹到這了,更多相關python數(shù)據庫插入數(shù)據內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論