Python3.x的mysqlclient的安装、Python操作mysql,python连接MySQL数据库,python创建数据库表,带有事务的操作,CRUD
1、數據庫操作
1.1準備工作:
1、安裝一個mysql數據庫軟件
2、創建一個數據庫,test
3、在python的環境安裝一個模塊:
1.2 安裝mysql的連接包
第一種:工具安裝
Python3.x版本:Pip install mysqlclient
Python2.x 版本:pip install mysql-python
錯誤
在win7-64bit的環境下會有錯誤:unable to find vcvarsall.bat
解決方案:
基本等于誤解
第二種:手動安裝
(1)先wheel
需要下載安裝包:
http://www.lfd.uci.edu/~gohlke/pythonlibs/
根據對應的python版本下載安裝包
Pip instal xxxxxxx.whl
(2)安裝mysqlclient
下載地址:
http://www.lfd.uci.edu/~gohlke/pythonlibs/
下載后的內容:
選擇版本:
在網上有很多安裝mysql的操作方法,簡單概述就是:
Python2.x 安裝mysql-python (如果是Python2.x就安裝mysql-python)
Python3.x 安裝mysqlclient (如果是Python3.x就安裝mysqlclient)
安裝步驟:
1.2.1 首先要在cmd下安裝wheel包:
D:\baiduDownload\software\python>pip install wheel1.2.2 接著進入*.whl安裝包所在的目錄,用cd命令
D:\baiduDownload\software\python>cd /D D:/baiduDownload/software/python1.2.3 使用 pip install *.whl安裝mysqlclient
D:\baiduDownload\software\python>pip install mysqlclient2、編寫python操作數據的代碼
import MySQLdb # 打開數據庫連接 db = MySQLdb.connect("192.168.106.100","root","123456","bigdata") # 使用cursor()方法獲取操作游標 cursor = db.cursor() # 使用execute方法執行SQL語句 cursor.execute("SELECT VERSION()") # 使用 fetchone() 方法獲取一條數據庫。 data = cursor.fetchone() print("Database version : %s " % data) # 關閉數據庫連接 db.close()運行結果:
3、python創建數據庫表
import MySQLdb # 打開數據庫連接 db = MySQLdb.connect("192.168.106.100","root","123456","bigdata") #使用cursor()方法獲取操作游標 cursor = db.cursor() # 如果數據表已經存在使用 execute() 方法刪除表。 cursor.execute("DROP TABLE IF EXISTS EMPLOYEE") # 創建數據表SQL語句 sql = """CREATE TABLE EMPLOYEE (FIRST_NAME CHAR(20) NOT NULL,LAST_NAME CHAR(20),AGE INT,SEX CHAR(1),INCOME FLOAT)""" cursor.execute(sql) # 關閉數據庫連接 db.close()4、插入數據
import MySQLdb #打開數據庫連接 db = MySQLdb.connect("192.168.106.100","root","123456","bigdata") # 使用cursor()方法獲取操作游標 cursor = db.cursor() # SQL 插入語句 sql = """INSERT INTO EMPLOYEE(FIRST_NAME,LAST_NAME, AGE, SEX, INCOME)VALUES ('Mac', 'Mohan', 20, 'M', 2000)""" try:# 執行sql語句cursor.execute(sql)# 提交到數據庫執行db.commit() except:# Rollback in case there is any errordb.rollback() # 關閉數據庫連接 db.close()上面的代碼可以寫成:
import MySQLdb #打開數據連接 db = MySQLdb.connect("192.168.106.100","root","123456","bigdata") # 使用cursor()方法獲取操作游標 cursor = db.cursor() # SQL 插入語句 sql = "INSERT INTO EMPLOYEE(FIRST_NAME, \LAST_NAME, AGE, SEX, INCOME) \VALUES ('%s', '%s', '%d', '%c', '%d' )" % \('Mac', 'Mohan', 20, 'M', 2000) try:# 執行sql語句cursor.execute(sql)# 提交到數據庫執行db.commit() except:# 發生錯誤時回滾db.rollback() # 關閉數據庫連接 db.close()5、查詢數據
Python查詢Mysql使用 fetchone() 方法獲取單條數據, 使用fetchall() 方法獲取多條數據。
fetchone(): 該方法獲取下一個查詢結果集。結果集是一個對象
fetchall():接收全部的返回結果行.
rowcount: 這是一個只讀屬性,并返回執行execute()方法后影響的行數。
執行后的結果:
6 更新數據庫內容
import MySQLdb db = MySQLdb.connect("192.168.106.100","root","123456","bigdata")# 使用cursor()方法獲取操作游標 cursor = db.cursor() # SQL 更新語句 sql = "UPDATE EMPLOYEE SET AGE = AGE + 1 WHERE SEX = '%c'" % ('M') try:# 執行SQL語句cursor.execute(sql)# 提交到數據庫執行db.commit() except:# 發生錯誤時回滾db.rollback() # 關閉數據庫連接 db.close()執行后前的結果是:
更新后的結果:
7 數據庫刪除操作
刪除作用于刪除數據表中的數據
刪除數據表EMPLOYEE中AGE大于20的所有數據:
數據刪除前的操作:
總結
以上是生活随笔為你收集整理的Python3.x的mysqlclient的安装、Python操作mysql,python连接MySQL数据库,python创建数据库表,带有事务的操作,CRUD的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 西瓜为什么能够利尿?
- 下一篇: linux cmake编译源码,linu