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

Python中使用PyMySQL模塊的方法詳解

 更新時間:2024年08月01日 09:44:45   作者:Az_plus  
Python中的pymysql模塊是用于連接MySQL數(shù)據(jù)庫的一個第三方庫,它提供了一套API,使得Python程序員能夠方便地執(zhí)行SQL語句、操作數(shù)據(jù)庫,下面這篇文章主要給大家介紹了關(guān)于Python中使用PyMySQL模塊的相關(guān)資料,需要的朋友可以參考下

安裝

pip install pymysql

連接數(shù)據(jù)庫

使用connect函數(shù)創(chuàng)建連接對象

此對象提供數(shù)據(jù)庫的關(guān)閉、事務(wù)提交、事務(wù)回滾等操作

示例:

import pymysql

# 以下為必填參數(shù)
conn = pymysql.connect(user='root',			# 用戶名
                      password='123456',	# 密碼
                      host='127.0.0.1',		# 服務(wù)器地址
                      port=3306,			# 數(shù)據(jù)庫端口
                      database='emp'		# 要連接的數(shù)據(jù)庫
                      )		

connect拓展

進入connect函數(shù)可以看到更多參數(shù):

def __init__(
        self,
        *,
        user=None,  	# 用戶名
        password="",	# 密碼
        host=None,		# 連接地址
        database=None,	# 庫名
        unix_socket=None,	# 如果使用Unix套接字連接到數(shù)據(jù)庫,指定套接字文件的路徑
        port=0,			# 數(shù)據(jù)庫端口號
        charset="",		# 使用的字符集 MySQL中一般是utf8mb4
        collation=None,	# 指定排序規(guī)則
        sql_mode=None,	# 連接使用的SQL模式
        read_default_file=None,	# 指定默認(rèn)連接參數(shù)的配置文件路徑
        conv=None,		# 自定義類型轉(zhuǎn)換器
        use_unicode=True,	# 是否使用Unicode編碼
        client_flag=0,	# 客戶端標(biāo)志位
        cursorclass=Cursor,	# 游標(biāo)類,用于處理查詢結(jié)果
        init_command=None,	# 建立連接后執(zhí)行的初始命令
        connect_timeout=10,	# 連接超時時間
        read_default_group=None,	# 讀取默認(rèn)連接參數(shù)的組名
        autocommit=False,	# 是否自動提交事務(wù)
        local_infile=False,	# 是否允許本地加載數(shù)據(jù)文件
        max_allowed_packet=16 * 1024 * 1024,	# 允許的最大數(shù)據(jù)包大小
        defer_connect=False,# 是否延遲連接
        auth_plugin_map=None,	# 指定認(rèn)證插件映射
        read_timeout=None,	# 讀取超時時間(秒)
        write_timeout=None,	# 寫入超時時間(秒)
        bind_address=None,	# 綁定本地地址
        binary_prefix=False,# 是否啟用二進制前綴
        program_name=None,	#程序名稱
        server_public_key=None,	# 服務(wù)器公鑰
        ssl=None,		# 是否使用SSL/TLS加密連接
        ssl_ca=None,	# 指定CA證書文件的路徑
        ssl_cert=None,	# 指定客戶端證書文件的路徑
        ssl_disabled=None,	#是否禁用SSL
        ssl_key=None,	# 指定客戶端私鑰文件的路徑
        ssl_verify_cert=None,	# 是否驗證服務(wù)器證書
        ssl_verify_identity=None,	# 是否驗證服務(wù)器身份
        compress=None,  # 不支持
        named_pipe=None,  # 不支持
        passwd=None,	# 已棄用
		db=None,		# 已棄用
    )

獲取游標(biāo)

conn = pymysql.connect(user='root',  # 用戶名
                       password='7997',  # 密碼
                       host='127.0.0.1',  # 服務(wù)器地址
                       port=3306,  # 數(shù)據(jù)庫端口
                       database='emp',  # 連接的數(shù)據(jù)庫
                       cursorclass=DictCursor  # 返回字典
                       )
cursor = conn.cursor() # 獲取游標(biāo)

操作數(shù)據(jù)

查找

import pymysql
from pymysql.cursors import DictCursor

conn = pymysql.connect(user='root',  # 用戶名
                       password='7997',  # 密碼
                       host='127.0.0.1',  # 服務(wù)器地址
                       port=3306,  # 數(shù)據(jù)庫端口
                       database='emp',  # 連接的數(shù)據(jù)庫
                       cursorclass=DictCursor  # 返回字典
                       )
cursor = conn.cursor()

sql = 'select * from emp5'
cursor.execute(sql)
res = cursor.fetchall()
print(res) # 返回一個由列表包裹的字典

# 輸出:[{'id': 1, 'name': '張三', 'time': datetime.datetime(2024, 1, 25, 15, 24, 19), 'age': 18, 'wages': 2000, 'dep_id': 203}, {'id': 2, 'name': '倪哥', 'time': datetime.datetime(2024, 1, 25, 15, 34, 11), 'age': 20, 'wages': 1000, 'dep_id': 201}]

添加

進行增刪改時注意提交事務(wù)conn.commit

import pymysql
from pymysql.cursors import DictCursor

conn = pymysql.connect(user='root',  # 用戶名
                       password='7997',  # 密碼
                       host='127.0.0.1',  # 服務(wù)器地址
                       port=3306,  # 數(shù)據(jù)庫端口
                       database='emp',  # 連接的數(shù)據(jù)庫
                       cursorclass=DictCursor  # 返回字典
                       )
cursor = conn.cursor()

sql_insert = 'insert into emp5 (name) value(%s) '
# 元組形式傳參
cursor.execute(sql_insert, ("嗨嗨嗨",))
conn.commit()	# 提交事務(wù)
sql_insert = 'insert into emp5 (name) value(%s) '
# 字典形式傳參
cursor.execute(sql_insert, {'emp_name': "員工二號"})
conn.commit()

添加成功~

更新

import pymysql
from pymysql.cursors import DictCursor

# 以下為必填參數(shù)
conn = pymysql.connect(user='root',  # 用戶名
                       password='7997',  # 密碼
                       host='127.0.0.1',  # 服務(wù)器地址
                       port=3306,  # 數(shù)據(jù)庫端口
                       database='emp',  # 連接的數(shù)據(jù)庫
                       cursorclass=DictCursor  # 返回字典
                       )
cursor = conn.cursor()

# 列表形式傳參
sql_update = 'update emp5 set name=%s where id=%s '
cursor.execute(sql_update, ['員工三號', 11])
conn.commit()

總結(jié) 

到此這篇關(guān)于Python中使用PyMySQL模塊的文章就介紹到這了,更多相關(guān)Python使用PyMySQL模塊內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python爬蟲開發(fā)與項目實戰(zhàn)

    Python爬蟲開發(fā)與項目實戰(zhàn)

    本書從基本的爬蟲原理開始講解,通過介紹Pthyon編程語言和Web前端基礎(chǔ)知識引領(lǐng)讀者入門,之后介紹動態(tài)爬蟲原理以及Scrapy爬蟲框架,最后介紹大規(guī)模數(shù)據(jù)下分布式爬蟲的設(shè)計以及PySpider爬蟲框架等,需要的朋友快來下載電子版吧
    2020-12-12
  • Python機器學(xué)習(xí)算法庫scikit-learn學(xué)習(xí)之決策樹實現(xiàn)方法詳解

    Python機器學(xué)習(xí)算法庫scikit-learn學(xué)習(xí)之決策樹實現(xiàn)方法詳解

    這篇文章主要介紹了Python機器學(xué)習(xí)算法庫scikit-learn學(xué)習(xí)之決策樹實現(xiàn)方法,結(jié)合實例形式分析了決策樹算法的原理及使用sklearn庫實現(xiàn)決策樹的相關(guān)操作技巧,需要的朋友可以參考下
    2019-07-07
  • Python OpenCV招商銀行信用卡卡號識別的方法

    Python OpenCV招商銀行信用卡卡號識別的方法

    這篇文章主要介紹了Python OpenCV招商銀行信用卡卡號識別的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • pymongo insert_many 批量插入的實例

    pymongo insert_many 批量插入的實例

    這篇文章主要介紹了pymongo insert_many 批量插入的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • python3中str(字符串)的使用教程

    python3中str(字符串)的使用教程

    這篇文章主要介紹了python3中str(字符串)的使用教程,文中介紹的非常詳細,對python3中各種str字符串的操作都包含這篇文章中了,需要的朋友可以參考學(xué)習(xí),下面來一起看看吧。
    2017-03-03
  • Python實現(xiàn)問題回答小游戲

    Python實現(xiàn)問題回答小游戲

    這篇文章主要介紹了利用Python制作一個簡單的知識競賽小游戲,可以實現(xiàn)回答問題功能,文中的示例代碼介紹詳細,感興趣的同學(xué)快跟隨小編一起學(xué)習(xí)吧
    2021-12-12
  • python鏈接oracle數(shù)據(jù)庫以及數(shù)據(jù)庫的增刪改查實例

    python鏈接oracle數(shù)據(jù)庫以及數(shù)據(jù)庫的增刪改查實例

    下面小編就為大家分享一篇python鏈接oracle數(shù)據(jù)庫以及數(shù)據(jù)庫的增刪改查實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • 深入理解Django的信號機制

    深入理解Django的信號機制

    本文主要介紹了深入理解Django的信號機制,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • 如何用scheduler實現(xiàn)learning-rate學(xué)習(xí)率動態(tài)變化

    如何用scheduler實現(xiàn)learning-rate學(xué)習(xí)率動態(tài)變化

    這篇文章主要介紹了如何用scheduler實現(xiàn)learning-rate學(xué)習(xí)率動態(tài)變化問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • 簡單了解python關(guān)系(比較)運算符

    簡單了解python關(guān)系(比較)運算符

    這篇文章主要介紹了簡單了解python關(guān)系(比較)運算符,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07

最新評論