python3 x操作mysql資料庫

2021-08-20 07:57:36 字數 2789 閱讀 5023

1、 安裝pymysql

pymysql 是在 python3.x 版本中用於連線 mysql 伺服器的乙個庫,python2中則使用mysqldb。 使用pip命令安裝 :pip install pymysql
2、鏈結資料庫並對資料庫進行一些操作

#插入資料

import pymysql

#開啟資料庫連線(ip/資料庫使用者名稱/登入密碼/資料庫名)

db = pymysql.connect("localhost", "root", "root", "test")

#使用 cursor() 方法建立乙個游標物件 cursor

cursor = db.cursor()

#使用 execute() 方法執行 sql 查詢

cursor.execute("select version()")

#使用 fetchone() 方法獲取單條資料.

data = cursor.fetchone()

print("database version : %s " % data)

#關閉資料庫連線

db.close()

3、python操作mysql資料庫實現增刪改查

① 資料庫插入操作  

import pymysql

#開啟資料庫連線(ip/資料庫使用者名稱/登入密碼/資料庫名)

db = pymysql.connect("localhost", "root", "root", "test")

#使用 cursor() 方法建立乙個游標物件 cursor

cursor = db.cursor()

sql = """insert into user(name)

values ('mac')"""

try:

# 執行sql語句

cursor.execute(sql)

# 提交到資料庫執行

db.commit()

except:

# 如果發生錯誤則回滾

db.rollback()

db.close()

2 資料庫查詢

import pymysql

# 開啟資料庫連線(ip/資料庫使用者名稱/登入密碼/資料庫名)

db = pymysql.connect("localhost", "root", "root", "test")

# 使用 cursor() 方法建立乙個游標物件 cursor

cursor = db.cursor()

# sql 查詢語句

sql = "select * from user"

try:

# 執行sql語句

cursor.execute(sql)

# 獲取所有記錄列表

results = cursor.fetchall()

for row in results:

id = row[0]

name = row[1]

# 列印結果

print("id=%s,name=%s" % \

(id, name))

except:

print("error: unable to fecth data")

# 關閉資料庫連線

db.close()

③ 資料庫更新

import pymysql

# 開啟資料庫連線(ip/資料庫使用者名稱/登入密碼/資料庫名)

db = pymysql.connect("localhost", "root", "root", "test")

# 使用 cursor() 方法建立乙個游標物件 cursor

cursor = db.cursor()

# sql 更新語句

sql = "update user set name = 'bob' where id = 1"

try:

# 執行sql語句

cursor.execute(sql)

# 提交到資料庫執行

db.commit()

except:

# 發生錯誤時回滾

db.rollback()

# 關閉資料庫連線

db.close()

④ 資料庫刪除

import pymysql

# 開啟資料庫連線(ip/資料庫使用者名稱/登入密碼/資料庫名)

db = pymysql.connect("localhost", "root", "root", "test")

# 使用 cursor() 方法建立乙個游標物件 cursor

cursor = db.cursor()

# sql 刪除語句

sql = "delete from user where id = 1"

try:

# 執行sql語句

cursor.execute(sql)

# 提交修改

db.commit()

except:

# 發生錯誤時回滾

db.rollback()

# 關閉資料庫連線

db.close()

python3 X操作mysql資料庫

在python2.x的版本中,連線mysql伺服器的 是這樣的 import mysqldb conn mysqldb.connect host 127.0.0.0 user root passwd 123 and so on.但是在3.x的版本裡,mysql for python mysqldb ...

Python3 x編碼問題

1.記事本的ansi編碼為系統本地編碼,我的是gbk open 函式的encoding引數預設是本地編碼,也就是gbk,所以直接讀取ansi編碼的記事本檔案是木有問題的。怎麼檢視系統本地編碼?在cmd下輸入 chcp 從下表可以看出,936對應gbk編碼 下表列出了所有支援的 頁及其國家 地區 或者...

Python 內建函式(Python 3 x)

1 type obj 返回變數型別 2 isinstance object,class or type or tuple 測試物件是否為指定型別的例項 4 range start,end step 返回乙個 start,end 內的 range 物件,start 預設為 0,step 預設為 1 5...