08 使用python操作mysql

2022-05-02 23:09:07 字數 2546 閱讀 8044

使用步驟

1. 匯入模組: import pymysql

dbconfig =

2. 建立連線: conn = pymysql.connect(**dbconfig)

# 連線是不能運算元據庫的, 需要用到連線生成游標來操作

3. 建立獲取游標: cur = conn.cursor()

4. 執行sql語句: cur.execute(sql)

# sql語句都是通過這個方法執行 如 cur.execute('select * from student')

5. 獲取結果: cur.fetchone()/cur.fetchmany(count)/cur.fetchall()

注意要點

在python中執行的sql語句不需要加 '';''

cur.execute(sql) 執行完後不是直接得到結果, 需要你主動雲獲取

和檔案一樣, 別忘記關閉游標與連線

事務的回滾和提交

連線查詢

# python操作mysql

import pymysql

# 1. 建立連線

db_config =

conn = pymysql.connect(**db_config) # 連線

# 2. 游標

cur = conn.cursor() # 獲取游標

# 3. 執行sql語句

# cur.execute('select * from student')

# 執行後返回值是資料的數量

# res = cur.execute('select * from student') # 返回表中資料的數量, 即有多少條資料

# print(res)

# 獲取結果

cur.execute('select * from student')

row = cur.fetchone()

while row:

print('row'.format(row))

row = cur.fetchone() # 這樣子, 一條一條的取, 不會造成記憶體**

# res = cur.fetchone() # fetchone() 每執行一次, 拿到一條資料

# print(res)

# 第執行一次, 拿到一條資料

# res = cur.fetchone()

# print(res)

# res = cur.fetchone()

# print(res)

# res = cur.fetchone() # 沒有資料拿到了, 返回none

# print(res)

# print(cur.fetchall()) # fetchall() 拿到全部的資料, # 資料很大的話, 一下子取全部, 會造成記憶體**

print(cur.fetchmany(3)) # fetchmany() 指定拿多少條資料, 如果表中資料沒有多, 則返回全部資料

# 4. 關閉游標

cur.close()

# 5. 關閉連線

conn.close()

插入資料, (python操作mysql預設是開啟了事務模式的) commit真正把資料寫入到資料庫中
# 用python操作mysql, 其預設使用了事務模式

import pymysql

# 1. 建立連線

db_config =

conn = pymysql.connect(**db_config) # 連線

# 2. 建立游標

cur = conn.cursor()

# 3. 執行sql語句

cur.execute('insert into stu value(1, "long", 18, "m")') # 預設使用了事務模式, 不會立即插入, 只有當你commit的時候才會插入到資料庫表中

conn.commit() # commit # python 運算元據庫預設使用了事務模式,commit的時候才會真正的把資料插入到表中去

# 4. 關閉游標

cur.close()

# 5. 關閉連線

conn.close()

上下文管理 with pymysql.connect(**dbconfig) as cur:
import pymysql

db_config =

conn = pymysql.connect(**db_config)

with conn.cursor() as cur: # cur游標物件 # with 自動關閉的

# with pymysql.connect(**db_config) as cur:

cur.execute('insert into stu value(6, "yan", 19, "f")')

# conn.commit() # (開啟了事務)提交

# conn.rollback() # (事務回滾)回滾

Python使用pymysql鏈結mysql資料庫

先安裝pymysql如下圖 author pythontab.com 可有可無 匯入pymysql的包 import pymysql try 獲取乙個資料庫連線,注意如果是utf 8型別的,需要制定資料庫 conn pymysql.connect host localhost user root p...

Python使用PyMySQL連線MySQL資料庫

目錄 環境要求 安裝 示例mysql 版本 因為我們本地安裝python的時候,一般都會安裝好pip工具,所以我們可以直接使用pip命令安裝pymysql 如果不會安裝python的朋友們可以看下我的安裝python文章 pip install pymysql出現以下提示就表示安裝成功了 windo...

mysql pdo手冊 使用PDO操作MySQL

pdo擴充套件為php訪問資料庫定義了乙個輕量級的 一致性的介面,它提供了乙個資料訪問抽象層,這樣,無論使用什麼資料庫,都可以通過一致的函式執行查詢和獲取資料。pdo支援的php版本為php5.1以及更高的版本,而且在php5.2下pdo預設為開啟狀態,下面是在php.ini中pdo的配置 exte...