Python 資料庫 之 pymysql

2021-10-02 04:13:06 字數 1802 閱讀 3658

資料庫連線物件的使用

import pymysql

1. 建立連線物件

語法:連線物件 = pymysql.connect(

host="連線位址 localhost, ip 位址",

port=埠號,預設3306,

user="使用者名稱",

password="密碼",

database="資料庫名",

charset="utf8"

)2. 使用連線物件

a. 建立游標物件

游標物件 = 連線物件.cursor(cursor=none)

引數說明: 指定游標的型別

`cursor`: 預設

`sscursor`: 預設基礎上採用生成器

`dictcursor`: 字典型別游標

`ssdictcursor`: 在字典採用生成器方式

例如: cnn.cursor(cursor=pymysql.cursors.ssdictcursor)

b. 切換資料庫

資料庫連線物件.select_db(資料庫名)

c. 關閉連線

連線物件.close()

d. 事務操作的方法

連線物件.begin(): 開啟事務,預設開啟

連線物件.commit(): 提交事務

連線物件.rollback(): 回滾事務

注意: pymysql 鑑於安全考慮,所有的寫(insert,delete,update)操作都必須使用事務

游標物件的使用

1. 游標物件用於執行sql語句

語法:游標物件.execute(sql,args=none)

傳引數的方式說明:

1. 如果是完整的sql語句, 就直接傳第乙個引數即可

備註: 如果通過傳入的形式拼接的sql語句,容易造成sql注入的風險.

sql注入: 惡意使用者構建特殊sql引數傳入,從而非法獲取資料.

2. 如果sql語句是使用 %s 佔位的時候,必須使用第二個引數args(實際的資料)

例子: sql = "select * from student where name=%s and age=%s"

args = ["張飛",51] #列表或者元組

游標物件.execute(sql,args)

了解:游標物件.executemany(sql,args=[(資料1,資料2),(資料1,資料2),(資料1,資料2)])

同一條sql執行多次

2. 游標物件獲取資料

游標物件.fetchall(): 獲取所有

游標物件.fetchone(): 獲取下一條(每執行一次獲取一條)

游標物件.fetchmany(number): 獲取指定條資料

3. 游標的關閉

游標物件.close()

備註: 建議每次使用完游標執行和獲取資料之後立馬關閉游標

提供乙個上下文管理器的語法, 自動關閉(任何開啟的東西)

with 連線物件.cursor() as cursor:

# 使用游標cursor 執行和獲取資料, 自動關閉游標

檔案操作

with open("./data.txt","r",encoding="utf-8") as fp:

fp.read()

pymysql—事務

事務: pymysql規定 所有的寫操作必須使用事務

連線物件.begin()

連線物件.commit()

連線物件.rollback()

python連線遠端資料庫示例 pymysql

python2 pip install mysql python python3 pip install pymysql 官方文件看這裡 以python3為例 import pymysql db pymysql.connect ip位址 使用者名稱 密碼 資料庫名稱 cursor db.cursor...

Python庫之資料庫連線

資料庫連線可用於連線眾多資料庫以及訪問通用資料庫介面,可用於資料庫維護 管理和增 刪 改 查等日常操作。1.mysql connector python 型別 第三方庫 描述 mysql官方驅動連線程式 推薦度 13.bsddb3 型別 第三方庫 描述 berkeley db連線庫 15.dbhas...

python七之資料庫

資料庫的命令 檢視所有的資料庫 show databases 檢視當前使用的資料庫 select database 切換資料庫 use 資料庫名 建立資料庫 create database 資料庫名 charset utf8 刪除資料庫 drop database 資料庫名 資料表的命令 檢視所有表...