亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python使用PyMySql增刪改查Mysql數據庫的實現

 更新時間:2024年01月02日 15:36:15   作者:愛寫代碼的小朋友  
PyMysql是Python中用于連接MySQL數據庫的一個第三方庫,本文主要介紹了Python使用PyMySql增刪改查Mysql數據庫的實現,具有一定的參考價值,感興趣的可以了解一下

PyMysql簡介

PyMysql是Python中用于連接MySQL數據庫的一個第三方庫,它實現了MySQL客戶端/服務器協議,使得Python程序能夠與MySQL服務器進行交互。由于Python2的mysql-python(又稱mysqldb)模塊在Python 3上支持不夠完善,因此pymysql成為了在Python3.x環(huán)境中一個流行的替代方案。

PyMysql的主要特點和功能:

  • 兼容性:pymysql與Python 3完全兼容,并且可以在Python
    2.7及更高版本上運行,為跨Python版本的應用提供統(tǒng)一的MySQL數據庫操作接口。
  • API設計:提供了類似DB-API 2.0規(guī)范的接口,使得開發(fā)者可以使用熟悉的執(zhí)行SQL語句、獲取結果集等方法。
  • 安全連接:支持安全的SSL加密連接到MySQL服務器。
  • 事務處理:通過commit()和rollback()方法支持事務控制。
  • 參數化查詢:允許使用占位符(%s)進行參數化SQL查詢,有效防止SQL注入攻擊。
  • 多結果集:對于支持多結果集的MySQL命令,如存儲過程,pymysql也能夠正確處理。

基本用法步驟:

  • 安裝pymysql(通常使用pip install pymysql)
  • 創(chuàng)建數據庫連接
  • 創(chuàng)建游標對象并執(zhí)行SQL語句
  • 處理查詢結果
  • 提交或回滾事務
  • 關閉游標和數據庫連接

以下使用PyMysql增刪改查Mysql數據庫

創(chuàng)建數據庫

CREATE TABLE `users` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(50) NOT NULL,
  `email` varchar(100) NOT NULL,
  `password` varchar(100) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

連接MySql數據庫

import pymysql

# 連接MySQL數據庫
db = pymysql.connect("localhost", "your_username", "your_password", "your_database")

# 創(chuàng)建一個游標對象cursor
cursor = db.cursor()

查詢數據(SELECT)

import pymysql

# 連接MySQL數據庫
db = pymysql.connect("localhost", "your_username", "your_password", "your_database")
# 創(chuàng)建一個游標對象cursor
cursor = db.cursor()
try:
    sql = "SELECT * FROM users WHERE username = %s"
    val = ("test_user",)
    cursor.execute(sql, val)
    results = cursor.fetchall()
    for row in results:
        print(f"ID: {row[0]}, Username: {row[1]}, Email: {row[2]}, Password: {row[3]}")
except Exception as e:
    print(f"查詢數據失敗: {e}")

插入數據(INSERT)

import pymysql

# 連接MySQL數據庫
db = pymysql.connect("localhost", "your_username", "your_password", "your_database")

# 創(chuàng)建一個游標對象cursor
cursor = db.cursor()
# 插入數據(INSERT)
try:
    sql = "INSERT INTO users (username, email, password) VALUES (%s, %s, %s)"
    val = ("test_user", "test@example.com", "test_password")
    cursor.execute(sql, val)
    db.commit()
    print("插入數據成功")
except Exception as e:
    db.rollback()  # 發(fā)生錯誤時回滾
    print(f"插入數據失敗: {e}")

更新數據(UPDATE)

import pymysql

# 連接MySQL數據庫
db = pymysql.connect("localhost", "your_username", "your_password", "your_database")

# 創(chuàng)建一個游標對象cursor
cursor = db.cursor()
try:
    sql = "UPDATE users SET email = %s WHERE username = %s"
    val = ("new_email@example.com", "test_user")
    cursor.execute(sql, val)
    db.commit()
    print("更新數據成功")
except Exception as e:
    db.rollback()
    print(f"更新數據失敗: {e}")

刪除數據(DELETE)

import pymysql

# 連接MySQL數據庫
db = pymysql.connect("localhost", "your_username", "your_password", "your_database")

# 創(chuàng)建一個游標對象cursor
cursor = db.cursor()
try:
    sql = "DELETE FROM users WHERE username = %s"
    val = ("test_user",)
    cursor.execute(sql, val)
    db.commit()
    print("刪除數據成功")
except Exception as e:
    db.rollback()
    print(f"刪除數據失敗: {e}")

關閉連接

cursor.close()
db.close()

請確保將上述代碼中的"your_username", “your_password”, "your_database"替換為你的實際數據庫用戶名、密碼和數據庫名。

到此這篇關于Python使用PyMySql增刪改查Mysql數據庫的實現的文章就介紹到這了,更多相關PyMySql增刪改查Mysql內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Django + Uwsgi + Nginx 實現生產環(huán)境部署的方法

    Django + Uwsgi + Nginx 實現生產環(huán)境部署的方法

    Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比較常見的一種方式。這篇文章主要介紹了Django + Uwsgi + Nginx 實現生產環(huán)境部署,感興趣的小伙伴們可以參考一下
    2018-06-06
  • python實現圖片處理和特征提取詳解

    python實現圖片處理和特征提取詳解

    這篇文章主要介紹了python實現圖片處理和特征提取詳解,文中向大家分享了Python導入圖片,將圖像轉化為二維矩陣,模糊化圖片等Python對圖像的操作,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • python實現鳶尾花三種聚類算法(K-means,AGNES,DBScan)

    python實現鳶尾花三種聚類算法(K-means,AGNES,DBScan)

    這篇文章主要介紹了python實現鳶尾花三種聚類算法(K-means,AGNES,DBScan),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-06-06
  • PyQt5每天必學之QSplitter實現窗口分隔

    PyQt5每天必學之QSplitter實現窗口分隔

    這篇文章主要介紹了PyQt5每天必學之窗口分隔,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • Python?Pandas如何獲取和修改任意位置的值(at,iat,loc,iloc)

    Python?Pandas如何獲取和修改任意位置的值(at,iat,loc,iloc)

    在我們對數據進行選擇之后,需要對特定的數據進行設置更改,設置,下面這篇文章主要給大家介紹了關于Python?Pandas如何獲取和修改任意位置的值(at,iat,loc,iloc)的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-01-01
  • 詳解Python中的路徑問題

    詳解Python中的路徑問題

    這篇文章主要介紹了Python中的路徑問題,幫助大家更好的理解和學習python,感興趣的朋友可以了解下
    2020-09-09
  • Python制作簡易版小工具之計算天數的實現思路

    Python制作簡易版小工具之計算天數的實現思路

    這篇文章主要介紹了Python制作簡易版小工具之計算天數的實現思路,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • 初步探究Python程序的執(zhí)行原理

    初步探究Python程序的執(zhí)行原理

    這篇文章主要介紹了Python程序的執(zhí)行原理,簡要地描述了其中的步驟,需要的朋友可以參考下
    2015-04-04
  • 使用 prometheus python 庫編寫自定義指標的方法(完整代碼)

    使用 prometheus python 庫編寫自定義指標的方法(完整代碼)

    這篇文章主要介紹了使用 prometheus python 庫編寫自定義指標的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • 基于Python的圖像閾值化分割(迭代法)

    基于Python的圖像閾值化分割(迭代法)

    這篇文章主要介紹了基于Python的圖像閾值化分割(迭代法),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11

最新評論