PyMySQL實(shí)現(xiàn)增刪查改的簡單使用
我們在使用MySQL的時(shí)候,可以在MySQL的客戶終端來操作數(shù)據(jù)庫中的表,同時(shí),也可以使用navicat等可視化的工具來操作數(shù)據(jù)表。但是,這只是操作個(gè)別數(shù)據(jù),如果我們想要插入10萬條數(shù)據(jù),那肯定就不能這么做了。
我們可以通過程序?qū)懸粋€(gè)循環(huán)來自動(dòng)插入,因此,PyMySQL就是使用python語言來直接操作數(shù)據(jù)庫的一個(gè)接口。
明確了這一點(diǎn),我們再開始介紹PyMySQL包:
1、PyMySQL的使用步驟:




2、案例:
2.1 查詢數(shù)據(jù)庫中的表的信息:
# 需求:查詢數(shù)據(jù)庫person中info表的信息
# 1.導(dǎo)包
import pymysql
try:
# 2.連接MySQL數(shù)據(jù)庫的服務(wù)
connc = pymysql.Connect(
user="root", # The first four arguments is based on DB-API 2.0 recommendation.
password="4412",
host='127.0.0.1', # mysql服務(wù)端的IP,默認(rèn)是127.0.0.1/localhost,或者寫真實(shí)的ip
database='person',
port=3306,
charset="utf8")
# 3.創(chuàng)建游標(biāo)對(duì)象
cur = connc.cursor()
# 4.編寫SQL語句
sql = 'select * from info;'
# 5.使用游標(biāo)對(duì)象調(diào)用SQL
cur.execute(sql)
# 6.獲取查詢的結(jié)果
result= cur.fetchall()
print(result)
# 7.關(guān)閉游標(biāo)對(duì)象
cur.close()
# 8.關(guān)閉連接
connc.close()
except Exception as e:
print(e)
運(yùn)行結(jié)果:

2.2 增加數(shù)據(jù):
大部分的步驟都和前面一樣,直接在程序中注釋看:
# 需求:
# 增加數(shù)據(jù) 劉德華56 男 數(shù)據(jù) 到 數(shù)據(jù)庫person--的info表中
# 修改數(shù)據(jù) 小王 的名字為 小王吧 到 數(shù)據(jù)庫person--的info表中
# 刪除數(shù)據(jù) 張三 數(shù)據(jù)庫person--的info表中
# 1.導(dǎo)包
import pymysql
# 2.連接MySQL服務(wù)
connc = pymysql.Connect(
user="root", # The first four arguments is based on DB-API 2.0 recommendation.
password="4412",
host='127.0.0.1', # mysql服務(wù)端的IP,默認(rèn)是127.0.0.1/localhost,或者寫真實(shí)的ip
database='person',
port=3306,
charset="utf8")
# 3.創(chuàng)建游標(biāo)對(duì)象
cur = connc.cursor()
try:
# 4.編寫、增加、刪除的SQL語句
# 增加數(shù)據(jù) 劉德華 56 男
sql = 'insert into info values(%s, %s, %s, %s)'
add_data = [0,"劉德華", 56, "男"]
# 5.使用游標(biāo)對(duì)象執(zhí)行SQL語句
cur.execute(sql, add_data)
# 6.提交操作
connc.commit()
except Exception as e:
print(e)
# 操作失敗,數(shù)據(jù)回滾
connc.rollback()
finally:
# 7.關(guān)閉游標(biāo)對(duì)象
cur.close()
# 8.關(guān)閉連接
connc.close()
print("結(jié)束!")
運(yùn)行之后,看看person數(shù)據(jù)庫中 表info 的數(shù)據(jù),確實(shí)增加成功了:

2.3 修改數(shù)據(jù):
# 需求:
# 增加數(shù)據(jù) 劉德華56 男 數(shù)據(jù) 到 數(shù)據(jù)庫person--的info表中
# 修改數(shù)據(jù) 小王 的名字為 小王吧 到 數(shù)據(jù)庫person--的info表中
# 刪除數(shù)據(jù) 張三 數(shù)據(jù)庫person--的info表中
# 1.導(dǎo)包
import pymysql
# 2.連接MySQL服務(wù)
connc = pymysql.Connect(
user="root", # The first four arguments is based on DB-API 2.0 recommendation.
password="4412",
host='127.0.0.1', # mysql服務(wù)端的IP,默認(rèn)是127.0.0.1/localhost,或者寫真實(shí)的ip
database='person',
port=3306,
charset="utf8")
# 3.創(chuàng)建游標(biāo)對(duì)象
cur = connc.cursor()
try:
# 4.編寫、增加、刪除的SQL語句
# 修改數(shù)據(jù) 李四 的名字為 李四的爸爸
sql = 'update info set name=%s where name="李四"'
update_data = ["李四的爸爸"]
# 5.使用游標(biāo)對(duì)象執(zhí)行SQL語句
cur.execute(sql, update_data)
# 6.提交操作
connc.commit()
except Exception as e:
print(e)
# 操作失敗,數(shù)據(jù)回滾
connc.rollback()
finally:
# 7.關(guān)閉游標(biāo)對(duì)象
cur.close()
# 8.關(guān)閉連接
connc.close()
print("結(jié)束!")
運(yùn)行之后,看看person數(shù)據(jù)庫中 表info 的數(shù)據(jù),確實(shí)修改成功了:

2.3 刪除數(shù)據(jù):
# 需求:
# 增加數(shù)據(jù) 劉德華56 男 數(shù)據(jù) 到 數(shù)據(jù)庫person--的info表中
# 修改數(shù)據(jù) 小王 的名字為 小王吧 到 數(shù)據(jù)庫person--的info表中
# 刪除數(shù)據(jù) 張三 數(shù)據(jù)庫person--的info表中
# 1.導(dǎo)包
import pymysql
# 2.連接MySQL服務(wù)
connc = pymysql.Connect(
user="root", # The first four arguments is based on DB-API 2.0 recommendation.
password="4412",
host='127.0.0.1', # mysql服務(wù)端的IP,默認(rèn)是127.0.0.1/localhost,或者寫真實(shí)的ip
database='person',
port=3306,
charset="utf8")
# 3.創(chuàng)建游標(biāo)對(duì)象
cur = connc.cursor()
try:
# 4.編寫、增加、刪除的SQL語句
# 修改數(shù)據(jù) 李四 的名字為 李四的爸爸
sql = 'update info set name=%s where name="李四"'
update_data = ["李四的爸爸"]
# 5.使用游標(biāo)對(duì)象執(zhí)行SQL語句
cur.execute(sql, update_data)
# 6.提交操作
connc.commit()
except Exception as e:
print(e)
# 操作失敗,數(shù)據(jù)回滾
connc.rollback()
finally:
# 7.關(guān)閉游標(biāo)對(duì)象
cur.close()
# 8.關(guān)閉連接
connc.close()
print("結(jié)束!")
運(yùn)行之后,看看person數(shù)據(jù)庫中 表info 的數(shù)據(jù),確實(shí)刪除成功了:

到此這篇關(guān)于PyMySQL實(shí)現(xiàn)增刪查改的簡單使用的文章就介紹到這了,更多相關(guān)PyMySQL 增刪查改內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python pygame模塊編寫飛機(jī)大戰(zhàn)
這篇文章主要為大家詳細(xì)介紹了python pygame模塊編寫飛機(jī)大戰(zhàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11
tensorflow使用freeze_graph.py將ckpt轉(zhuǎn)為pb文件的方法
這篇文章主要介紹了tensorflow使用freeze_graph.py將ckpt轉(zhuǎn)為pb文件的方法,需要的朋友可以參考下2020-04-04
python中將函數(shù)賦值給變量時(shí)需要注意的一些問題
變量賦值是我們在日常開發(fā)中經(jīng)常會(huì)遇到的一個(gè)問題,下面這篇文章主要給大家介紹了關(guān)于python中將函數(shù)賦值給變量時(shí)需要注意的一些問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-08-08
關(guān)于pygame自定義窗口創(chuàng)建及相關(guān)操作指南
對(duì)于開發(fā)一個(gè)游戲來說,窗口的顯示肯定是前提中的前提,對(duì)于pygame來說,只需要一小段代碼就可以初始化窗口,下面這篇文章主要給大家介紹了關(guān)于pygame自定義窗口創(chuàng)建及相關(guān)操作的相關(guān)資料,需要的朋友可以參考下2022-07-07

