日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

前言

今天筆者想和大家來聊聊Python/ target=_blank class=infotextkey>Python接口自動化的MySQL數據連接,廢話不多說咱們直接進入主題吧。

python接口自動化之MySQL數據連接

 

一、什么是 PyMySQL?

PyMySQL是在Python3.x版本中用于連接MySQL服務器的一個庫,Python2中則使用mysqldb。它是一個遵循 Python數據庫APIv2.0規范,并包含了pure-Python MySQL客戶端的庫。

 二、為什么需要連接數據庫?

在接口測試過程中,常常會有增刪改查的操作,但是單從接口返回不能確保數據是否真的按照我們期望的結果來走,這時就需要查詢數據庫來核對,如注冊接口,需要查詢賬號是否新建成功;接口修改數據,數據庫的數據是否被更新到最新等等。

三、安裝

cmd命令行執行pip install pymysql

四、操作數據庫

? 連接數據庫之前,要先確保數據庫已經建立。操作數據庫的步驟可以簡單分為三步:

? 1. 連接數據庫pymysql.connect(host, user, password, port, charset)

? 2. 創建游標對象cursor()

? 3. 執行sqlexecute(sql)

import pymysql


con = pymysql.connect(host="192.168.100.101",	# 連接數據庫
                      user="test",
                      password="123456",
                      port=3306,
                      charset="utf8"
                      )
cur = con.cursor()	# 創建游標
sql = "SELECT * FROM member WHERE username ='test'"
res = cur.execute(sql) 	# 執行sql

? 上面中提到一個概念:游標,實際上就是一種能從包括多條數據記錄的結果集中每次提取一條記錄的機制,就等于光標的上下移動,盡管游標能遍歷結果中的所有行,但它一次只指向一行。游標的作用就是用于對查詢數據庫所返回的記錄進行遍歷,以便進行相應的操作,就像電腦的鼠標一樣。

python接口自動化之MySQL數據連接

 

五、提取查詢結果

? fetchall:返回的是一個查詢集(元祖的形式,查詢到的每一條數據為這個元祖中的一個元素)

? fatchone:獲取查詢到的數據中的第一條

import pymysql


con = pymysql.connect(host="127.0.0.1",
                      user="test",
                      password="123456",
                      port=3306,
                      charset="utf8"
                      )
cur = con.cursor()	# 創建游標
sql = "SELECT mobile_phone FROM futureloan.member limit 4"
res = cur.execute(sql)
datas = cur.fetchall()
print(datas)
for i in datas:
    print(i)

? 運行結果:

C:softwarepythonpython.exe D:/learn/test.py
(('13688703234',), ('15600403234',), ('15688113234',), ('13504071234',))
('13688703234',)
('15600403234',)
('15688113234',)
('13504071234',)

Process finished with exit code 0

? 特別注意:

? 執行完增刪改的sql語句之后,需要進行commit提交確認,這里commit的作用相當于數據庫中的提交事務。

封裝

? 凡是需要重復使用的,我們都可以對它進行二次封裝,寫成我們自己的版本,還可以在封裝過程中加入我們想要的內容,使用的時候直接調用即可。

import pymysql
from common.my_config import conf


class HandleDB:

    def __init__(self):
        # 讀取配置文件的數據庫信息
        self.con = pymysql.connect(host=conf.get_str("mysql", "host"),
                                   user=conf.get_str("mysql", "user"),
                                   password=conf.get_str("mysql", "password"),
                                   port=conf.get_int("mysql", "port"),
                                   charset="utf8"
                                   )
        self.cur = self.con.cursor()

    def get_one(self, sql):
        """獲取查詢到的第一條數據"""
        self.con.commit()
        self.cur.execute(sql)
        return self.cur.fetchone()

    def get_all(self, sql):
        """獲取sql語句查詢到的所有數據"""
        pass

    def count(self, sql):
        """統計sql語句查詢到的數據"""
        pass

    def close(self):
        self.cur.close()	 # 關閉游標對象
        self.con.close()	# 斷開連接

總結

今天的文章就到這里了喲,喜歡的小伙伴可以點贊收藏評論加關注喲,筆者每天都會分享不同的知識點喲,偶爾還會有一些小福利和小驚喜喲。

分享到:
標簽:python
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定