python3与MySQL交互
生活随笔
收集整理的這篇文章主要介紹了
python3与MySQL交互
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
- 一 簡述
- 二demo 實戰
- 數據庫連接
- 創建數據庫表
- 插入操作
- 查詢操作
- 更新操作
- 刪除操作
一 、簡述
python3 與MySQL 進行交互編程需要安裝 pymysql 庫,故首先使用如下命令安裝pymysql 。
pip install PyMySQL那什么是pymysql呢?
- PyMySQL 是在 Python3.x 版本中用于連接 MySQL 服務器的一個庫。
- 如果安裝過程出現 "ImportError: No module named setuptools"的錯誤提示,意思是你沒有安裝setuptools,你可以訪問這里寫鏈接內容 找到各個系統的安裝方法。
- 然后確保你的設備上面滿足如下條件:
- 創建了數據庫 TESTDB.
- 在TESTDB數據庫中您已經創建了表 EMPLOYEE
- EMPLOYEE表字段為 FirstName, LastName, Age, Sex 和 Income。
- 連接數據庫TESTDB使用的用戶名為 “root” ,密碼為 “123”(這是我的數據庫密碼,你的需要改成相應的), Mysql數據庫用戶授權請使用Grant命令。
- 如果你對Mysql數據庫相關不太熟悉,你可以訪問我的這篇文章Mysql教程,熟悉后在進行相關的操作。
二、demo 實戰
注意:由于可能因為操作過程中會發生各種錯誤,于是,這里將相關錯誤放置在前面,以示提醒。
1 、數據庫連接
#!/usr/bin/python3 import pymysql# 打開數據庫連接 db = pymysql.connect("localhost","root","123","TESTDB")# 使用 cursor() 方法創建一個游標對象 cursor cursor = db.cursor()# 使用 execute() 方法執行SQL 查詢 cursor.execute("SELECT VERSION()")# 使用 fetchone() 方法獲取單條數據 data = cursor.fetchone()print ("\n Database version : %s \n"% data)# 關閉數據庫連接 db.close()輸出結果為: Database version : 5.7.20-0ubuntu0.16.04.1
2 、創建數據庫表
#!/usr/bin/pyhton3 import pymysql# 打開數據庫連接 db = pymysql.connect("localhost","root","123","TESTDB")# 使用 cursor() 方法創建一個游標對象 cursor cursor = db.cursor()# 使用 execute() 方法執行 SQL,如果表存在則刪除 cursor.execute("drop table if exists EMPLOYEE")# 使用預處理語句創建表 sql = """create table EMPLOYEE (FirstName char(20) not null,LastName char(20),Age int,Sex char(1),Income float ) """ cursor.execute(sql) print ("\n creat table successd ! \n")# 關閉數據庫連接 db.close()3 、插入操作
#!/usr/bin/python3 import pymysqldb = pymysql.connect("localhost","root","123","TESTDB")cursor = db.cursor()# sql 插入語句 sql = """insert into EMPLOYEE(FirstName,LastName,Age,Sex,Income) values('Mac','Mohan',20,'M',2000);"""try:# 執行 sql 語句cursor.execute(sql)# 提交到數據庫執行db.commit()print ('提交完畢') except:# 如果發生錯誤則進行回滾db.rollback()print ('\n Some Error happend ! \n')# 關閉數據庫連接 db.close()4 、查詢操作
Python查詢Mysql使用 fetchone() 方法獲取單條數據, 使用fetchall() 方法獲取多條數據。
5 、更新操作
!/usr/bin/python3 import pymysqldb = pymysql.connect('localhost','root','123','TESTDB')cursor = db.cursor()# SQL 更新語句 sql = "update EMPLOYEE set Age = Age + 1 where sex = '%c'"%('M')try:cursor.execute(sql)db.commit() except:db.rollback()db.close()6 、刪除操作
#!/usr/bin/python3 import pymysqldb = pymysql.connect('localhost','root','123','TESTDB')cursor = db.cursor()sql = "delete from EMPLOYEE where Age > '%d' "%(20)try:cursor.execute(sql)db.commit() except:db.rollback()print ('發生錯誤,回滾中!')db.close()總結
以上是生活随笔為你收集整理的python3与MySQL交互的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【翻译】Sklearn 与 Tensor
- 下一篇: PostgreSQL 快速给指定表每个字