日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

PyMySQL安裝方法

pip install pymysql

連接數據庫

注意事項

在進行本文以下內容之前需要注意:

  • 你有一個MySQL數據庫,并且已經啟動。
  • 你有可以連接該數據庫的用戶名和密碼
  • 你有一個有權限操作的database

基本使用

# 導入pymysql模塊

import pymysql

# 鏈接庫(database)

conn = pymysql.connect(
    host="127.0.0.1",  # host后面填寫需要鏈接的數據庫地址
    user="root",  # 用戶名
    password="123456",  # 密碼
    database="human",  # 數據庫名
    charset="utf8"  # 編碼方式
)

# 得到一個可以執行的SQL語句的光標

cursor = conn.cursor()

# 定義要執行的SQL語句

sql = 'select * from info;'

# 執行SQL語句

cursor.execute(sql)

# 關閉光標對象

cursor.close()

# 關閉數據庫連接

conn.close()

返回字典格式的數據

import pymysql

conn = pymysql.connect(
    host="127.0.0.1",
    user="root",
    password="123456",
    database="human",
    charset="utf8"
)

# 得到一個可以執行SQL語句并且將結果作為字典返回的游標
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)

sql = 'select name from class;'

# 執行sql語句
cursor.execute(sql)

# 返回查詢到的所有數據
ret = cursor.fetchall()

# 返回查詢到的指定條數數據
# ret = cursor.fetchmany(5)

print(ret)

# 關閉鏈接
cursor.close()
conn.close()

注意

charset=“utf8”,編碼不要寫成"utf-8"

增刪改查操作

import pymysql

conn = pymysql.connect(
    host="127.0.0.1",
    user="root",
    password="123456",
    database="human",
    charset="utf8"
)

cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
# 注意此處傳值全部使用%s做占位符即可
sql = "insert into class(name, age, sex, salary) VALUES(%s,%s,%s,%s)"
name = 'abcd'
age = '33'
sex = '男'
salary = '120.02'

# 執行sql語句
cursor.execute(sql, [name, age, sex, salary])

# 提交事務
conn.commit()

cursor.close()
conn.close()

插入數據失敗回滾

import pymysql
conn = pymysql.connect(
    host="127.0.0.1",
    user="root",
    password="123456",
    database="human",
    charset="utf8"
)

cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)

sql = "INSERT into class(name, age, sex, salary) values(%s,%s,%s,%s);"

name = "ss"
age = "22"
sex = "男22"
salary="1234.2"
try:
    cursor.execute(sql, [name, age, sex, salary])
    # 提交事務
    conn.commit()
except Exception:
    print('出錯')
    # 有異?;貪L事務
    conn.rollback()

cursor.close()
conn.close()

獲取插入數據的ID(關聯操作時會用到)

# 導入pymysql模塊
import pymysql
# 連接database
conn = pymysql.connect(host=“你的數據庫地址”, user=“用戶名”,password=“密碼”,database=“數據庫名”,charset=“utf8”)
# 得到一個可以執行SQL語句的光標對象
cursor = conn.cursor()
sql = "INSERT INTO USER1(name, age) VALUES (%s, %s);"
username = "run"
age = 18
try:
    # 執行SQL語句
    cursor.execute(sql, [username, age])
    # 提交事務
    conn.commit()
    # 提交之后,獲取剛插入的數據的ID
    last_id = cursor.lastrowid
except Exception as e:
    # 有異常,回滾事務
    conn.rollback()
cursor.close()
conn.close()

批量執行

# 導入pymysql模塊
import pymysql
# 連接database
conn = pymysql.connect(host=“你的數據庫地址”, user=“用戶名”,password=“密碼”,database=“數據庫名”,charset=“utf8”)
# 得到一個可以執行SQL語句的光標對象
cursor = conn.cursor()
sql = "INSERT INTO USER1(name, age) VALUES (%s, %s);"
data = [("run1", 18), ("run2", 20), ("run3", 21)]
try:
    # 批量執行多條插入SQL語句
    cursor.executemany(sql, data)
    # 提交事務
    conn.commit()
except Exception as e:
    # 有異常,回滾事務
    conn.rollback()
cursor.close()
conn.close()

# 導入pymysql模塊
import pymysql
# 連接database
conn = pymysql.connect(host=“你的數據庫地址”, user=“用戶名”,password=“密碼”,database=“數據庫名”,charset=“utf8”)
# 得到一個可以執行SQL語句的光標對象
cursor = conn.cursor()
sql = "DELETE FROM USER1 WHERE id=%s;"
try:
    cursor.execute(sql, [4])
    # 提交事務
    conn.commit()
except Exception as e:
    # 有異常,回滾事務
    conn.rollback()
cursor.close()
conn.close()

# 導入pymysql模塊
import pymysql
# 連接database
conn = pymysql.connect(host=“你的數據庫地址”, user=“用戶名”,password=“密碼”,database=“數據庫名”,charset=“utf8”)
# 得到一個可以執行SQL語句的光標對象
cursor = conn.cursor()
# 修改數據的SQL語句
sql = "UPDATE USER1 SET age=%s WHERE name=%s;"
username = "run1"
age = 80
try:
    # 執行SQL語句
    cursor.execute(sql, [age, username])
    # 提交事務
    conn.commit()
except Exception as e:
    # 有異常,回滾事務
    conn.rollback()
cursor.close()
conn.close()

查詢單條數據

# 導入pymysql模塊
import pymysql
# 連接database
conn = pymysql.connect(host=“你的數據庫地址”, user=“用戶名”,password=“密碼”,database=“數據庫名”,charset=“utf8”)
# 得到一個可以執行SQL語句的光標對象
cursor = conn.cursor()
# 查詢數據的SQL語句
sql = "SELECT id,name,age from USER1 WHERE id=1;"
# 執行SQL語句
cursor.execute(sql)
# 獲取單條查詢數據
ret = cursor.fetchone()
cursor.close()
conn.close()
# 打印下查詢結果
print(ret)

查詢多條數據

# 導入pymysql模塊
import pymysql
# 連接database
conn = pymysql.connect(host=“你的數據庫地址”, user=“用戶名”,password=“密碼”,database=“數據庫名”,charset=“utf8”)
# 得到一個可以執行SQL語句的光標對象
cursor = conn.cursor()
# 查詢數據的SQL語句
sql = "SELECT id,name,age from USER1;"
# 執行SQL語句
cursor.execute(sql)
# 獲取多條查詢數據
ret = cursor.fetchall()
cursor.close()
conn.close()
# 打印下查詢結果
print(ret)

進階用法

# 可以獲取指定數量的數據
cursor.fetchmany(3)
# 光標按絕對位置移動1
cursor.scroll(1, mode="absolute")
# 光標按照相對位置(當前位置)向后移動1
cursor.scroll(1, mode="relative")
# 光標按照相對位置(當前位置)向前移動1
cursor.scroll(-1, mode="relative")

#計算機##mysql##數據庫##Python##科技新星創作營#

一篇文章搞定Python連接mysql數據庫模塊PyMySQL

分享到:
標簽:Python mysql
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定