本文目錄一覽:
- 1、Python之MySQL操作
- 2、怎麼用python連接mysql數據庫
- 3、Python 操作 MySQL 的5種方式
- 4、掌握Python 操作 MySQL 數據庫
- 5、Python操作MySQL的驅動有哪些?
- 6、如何用python連接mysql數據庫
Python之MySQL操作
MySQL 是目前使用最廣泛的數據庫之一,它有着良好的性能,能夠跨平台,支持分佈式,能夠承受高並發。下載地址: MySQL :: Download MySQL Community Server 安裝參考: 圖解MySQL5.7.20免安裝版配置方法-百度經驗 (baidu.com)
Python 大致有如下 5 種方式操作 MySQL。
先使用如下建表語句創建一張簡單的數據庫表。
2.1 mysqlclient
執行 pip install mysqlclient 進行安裝,看一下具體操作。
新增
查詢
cursor 查看方法
修改
刪除
2.2 PyMySQL
執行 pip install pymysql 進行安裝,使用方式與 mysqlclient 基本類似。
2.3 peewee
執行 pip install peewee 進行安裝,看一下具體操作。
定義映射類
新增
查詢
修改
刪除
2.4 SQLAlchemy
執行 pip install sqlalchemy 進行安裝,看一下具體操作。
定義映射類
新增
查詢
修改
刪除
Python學習日記
怎麼用python連接mysql數據庫
在 Python 語言環境下我們這樣連接數據庫。
In [1]: from mysql import connector
In [2]: cnx = connector.connect(host=”172.16.192.100″,port=3306,user=”appuser”,password=”xxxxxx”)
但是連接數據庫的背後發生了什麼呢?
答案
當我們通過驅動程序(mysql-connector-python,pymysql)連接 MySQL 服務端的時候,就是把連接參數傳遞給驅動程序,驅動程序再根據參數會發起到 MySQL 服務端的 TCP 連接。當 TCP 連接建立之後驅動程序與服務端之間會按特定的格式和次序交換數據包,數據包的格式和發送次序由 MySQL 協議 規定。MySQL 協議:整個連接的過程中 MySQL 服務端與驅動程序之間,按如下的次序發送了這些包。
MySQL 服務端向客戶端發送一個握手包,包里記錄了 MySQL-Server 的版本,默認的授權插件,密碼鹽值(auth-data)。
2. MySQL 客戶端發出 ssl 連接請求包(如果有必要的話)。
3. MySQL 客戶端發出握手包的響應包,這個包時記錄了用戶名,密碼加密後的串,客戶端屬性,等等其它信息。
4. MySQL 服務端發出響應包,這個包里記錄了登錄是否成功,如果沒有成功也會給出錯誤信息。
Python 操作 MySQL 的5種方式
1、MySQLdb
# 前置條件
sudo apt-get install python-dev libmysqlclient-dev # Ubuntu
sudo yum install python-devel mysql-devel # Red Hat / CentOS
# 安裝
pip install MySQL-python
Windows 直接通過下載 exe 文件安裝
#!/usr/bin/python
import MySQLdb
db = MySQLdb.connect(
host = “localhost”, # 主機名
user = “root”, # 用戶名
passwd = “pythontab.com”, # 密碼
db = “testdb”) # 數據庫名稱
# 查詢前,必須先獲取游標
cur = db.cursor()
# 執行的都是原生SQL語句
cur.execute(“SELECT * FROM mytable”)
for row in cur.fetchall():
print(row[0])
db.close()
2、mysqlclient
# Windows安裝
pip install some-package.whl
# linux 前置條件
sudo apt-get install python3-dev # debian / Ubuntu
sudo yum install python3-devel # Red Hat / CentOS
brew install mysql-connector-c # macOS (Homebrew)
pip install mysqlclient
3、PyMySQL
pip install PyMySQL
# 為了兼容mysqldb,只需要加入
pymysql.install_as_MySQLdb()
import pymysql
conn = pymysql.connect(host = ‘127.0.0.1’, user = ‘root’, passwd = “pythontab.com”, db = ‘testdb’)
cur = conn.cursor()
cur.execute(“SELECT Host,User FROM user”)
for r in cur:
print(r)
cur.close()
conn.close()
4、peewee
pip install peewee
import peewee
from peewee import *
db = MySQLDatabase(‘testdb’, user = ‘root’, passwd = ‘pythontab.com’)
class Book(peewee.Model):
author = peewee.CharField()
title = peewee.TextField()
class Meta:
database = db
Book.create_table()
book = Book(author = “pythontab”, title = ‘pythontab is good website’)
book.save()
for book in Book.filter(author = “pythontab”):
print(book.title)
5、SQLAlchemy
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy_declarative import Address, Base, Person
class Address(Base):
__tablename__ = ‘address’
id = Column(Integer, primary_key = True)
street_name = Column(String(250))
engine = create_engine(‘sqlite:///sqlalchemy_example.db’)
Base.metadata.bind = engine
DBSession = sessionmaker(bind = engine)
session = DBSession()
# Insert a Person in the person table
new_person = Person(name = ‘new person’)
session.add(new_person)
session.commit()
掌握Python 操作 MySQL 數據庫
本文Python 操作 MySQL 數據庫需要是使用到 PyMySQL 驅動
Python 操作 MySQL 前提是要安裝好 MySQL 數據庫並能正常連接使用,安裝步驟詳見下文。
注意: 安裝過程我們需要通過開啟管理員權限來安裝,否則會由於權限不足導致無法安裝。
首先需要先下載 MySQL 安裝包, 官網下載地址 下載對應版本即可,或直接在網上拉取並安裝:
權限設置:
初始化 MySQL:
啟動 MySQL:
查看 MySQL 運行狀態:
Mysql安裝成功後,默認的root用戶密碼為空,你可以使用以下命令來創建root用戶的密碼:
登陸:
創建數據庫:
查看數據庫:
PyMySQL 模塊使用 pip命令進行安裝:
假如系統不支持 pip 命令,可以使用以下方式安裝:
pymysql .connect 函數:連接上數據庫
輸出結果顯示如下:表面數據庫連接成功
使用 pymysql 的 connect() 方法連接數據庫,connect 參數解釋如下:
conn.cursor():獲取游標
如果要操作數據庫,光連接數據是不夠的,咱們必須拿到操作數據庫的游標,才能進行後續的操作,游標的主要作用是用來接收數據庫操作後的返回結果,比如讀取數據、添加數據。通過獲取到的數據庫連接實例 conn 下的 cursor() 方法來創建游標,實例如下:
輸出結果為:
cursor 返回一個游標實例對象,其中包含了很多操作數據的方法,如執行sql語句,sql 執行命令: execute() 和 executemany()
execute(query,args=None):
executemany(query,args=None):
其他游標對象如下表:
完整數據庫連接操作實例如下:
以上結果輸出為:
創建表代碼如下:
如下所示數據庫表創建成功:
插入數據實現代碼:
插入數據結果:
Python查詢Mysql使用 fetchone() 方法獲取單條數據, 使用fetchall() 方法獲取多條數據。
查詢數據代碼如下:
輸出結果:
DB API中定義了一些數據庫操作的錯誤及異常,下表列出了這些錯誤和異常:
本文給大家介紹 Python 如何連接 Mysql 進行數據的增刪改查操作,文章通過簡潔的代碼方式進行示例演示,給使用 Python 操作 Mysql 的工程師提供支撐。
Python操作MySQL的驅動有哪些?
使用Python操作MySQL數據庫的方式(驅動)有很多種,比如:PyMySQL、MySQLdb、mysqlclient、SQLAlchemy等等
MySQLdb
MySQLdb是 Python 連接 MySQL 最流行的一個驅動,很多框架都也是基於此庫進行開發,遺憾的是它只支持 Python2.x,它是基於C開發的庫,和Windows 平台的兼容性不友好,現在基本不推薦使用,取代的是它的衍生版本。
mysqlclient
由於 MySQLdb 年久失修,後來出現了它的 Fork 版本 mysqlclient,完全兼容 MySQLdb,同時支持 Python3.x,是 Django ORM的依賴工具,如果你想使用原生 SQL 來操作數據庫,那麼推薦此驅動。
PyMySQL
PyMySQL是純 Python 實現的驅動,速度上比不上 MySQLdb,最大的特點可能就是它的安裝方式沒那麼繁瑣,同時也兼容 MySQLdb。
SQLAlchemy
SQLAlchemy是一種既支持原生 SQL,又支持 ORM 的工具,它非常接近 Java 中的 Hibernate 框架。
作為一個測試人員,數據庫的操作也必須是要掌握的,如果想系統的學習接口測試相關的技術,可以了解一下黑馬程序員的軟件測試課程,裏面講的非常詳細。
如何用python連接mysql數據庫
數據庫連接
連接數據庫前,請先確認以下事項:
您已經創建了數據庫 TESTDB.
在TESTDB數據庫中您已經創建了表 EMPLOYEE
EMPLOYEE表字段為 FIRST_NAME, LAST_NAME, AGE, SEX 和 INCOME。
連接數據庫TESTDB使用的用戶名為 “testuser” ,密碼為 “test123”,你可以可以自己設定或者直接使用root用戶名及其密碼,Mysql數據庫用戶授權請使用Grant命令。
在你的機子上已經安裝了 Python MySQLdb 模塊。
如果您對sql語句不熟悉,可以訪問我們的 SQL基礎教程
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/238212.html