好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Python接口自動化淺析pymysql數據庫操作流程

Python接口自動化淺析pymysql數據庫操作流程

熱門標簽:ai電話機器人哪里好 湛江智能外呼系統廠家 地圖標注審核表 ai電銷機器人源碼 外呼并發線路 西藏房產智能外呼系統要多少錢 百度地圖標注沒有了 長沙高頻外呼系統原理是什么 宿遷星美防封電銷卡

在上一篇Python接口自動化測試系列文章:Python接口自動化淺析yaml配置文件原理及用法,主要介紹主要介紹yaml語法、yaml存儲數據,封裝類讀寫yaml配置文件。

在自動化過程中,我們需要查詢數據庫,校驗結果是否正確,比如充值完成之后,需要查詢數據庫,查看充值是否成功。

以下主要介紹,pymysql安裝、操作流程、語法基礎及封裝操作數據庫類。

一、pymysql介紹及安裝

01 pymysql介紹

MySQL應該說是如今使用最為普遍的數據庫了,沒有之一,而Python作為最為流行的語言之一,自然少不了與MySQL打交道,其中PyMySQL就是使用最多的工具庫。

  • PyMySQL是一個純Python寫的MySQL客戶端,可以在CPython、PyPy、IronPython和Jython環境下運行;
  • PyMySQL的性能和MySQLdb幾乎相當,如果對性能要求 不是特別的強,使用PyMySQL將更加方便;
  • PyMySQL的使用方法和MySQLdb幾乎一樣;

02 pymysql安裝

方式一:使用命令安裝

pip install pymysql

方式二:PyCharm內部安裝

導入模塊:

import pymysql

二、pymysql流程及模塊說明

01 pymysql操作流程

  • 導入pymysql;
  • 建立數據庫連接:使用pymysql的connect()方法連接數據,返回連接對象;
  • 使用連接對象創建游標對象(用于操作sql);
  • 準備寫sql語句(select * from student);
  • 使用游標對象執行sql;
  • 查詢數據使用游標獲取;
  • 關閉游標(先)和數據庫連接(后)。

02

02pymysql模塊說明

Connection對象

表示:conn=connect(參數列表)

作用:用于建立與數據庫的連接;

創建對象:調用connect()方法;

參數列表:

host:連接的mysql主機,如本機是'localhost';

port:連接的mysql主機的端口,默認是3306;

database:數據庫的名稱;

user:連接的用戶名;

password:連接的密碼;

charset:通信采用的編碼方式,推薦使用utf8;

對象的方法

對象方法如下:

close():關閉連接;

commit():提交;

cursor():返回Cursor對象,用于執行sql語句并獲得結果;

execute(operation [, parameters ]):執行語句,返回受影響的行數,主要用于執行insert、update、delete語句,也可以執行create、alter、drop等語句;

fetchone():執行查詢語句時,獲取查詢結果集的第一個行數據,返回一個元組;

fetchall():執行查詢時,獲取結果集的所有行,一行構成一個元組,再將這些元組裝入一個元組返回;

關于pymysql防注入,字符串拼接查詢,容易造成注入,為了避免注入,使用pymysql提供的參數化語句;

Cursor對象

游標(cursor)就是游動的標識,通俗的說,一條sql取出對應n條結果資源的接口/句柄,就是游標,沿著游標可以一次取出一行。

  • 用于執行sql語句,使用頻度最高的語句為select、insert、update、delete;
  • 獲取Cursor對象:調用Connection對象的cursor()方法:cs1=conn.cursor()

對象的屬性

  • rowcount只讀屬性,表示最近一次execute()執行后受影響的行數;
  • connection獲得當前連接對象;

三、pymysql語法基礎

01 代碼示例

import pymysql
# 連接數據庫
conn = pymysql.connect(host='127.0.0.1', user='ITester', password='123456',
                       database='ITester', charset='utf8')
# 創建游標
cursor = conn.cursor()
# 執行sql語句
sql = 'select * from user limit 3;'
res = cursor.execute(sql)
# 獲取查詢結果的1條數據
data = cursor.fetchone()
print(data)
# 關閉游標連接
cursor.close()
# 關閉數據庫連接
conn.close()

02 語法總結

1.連接數據庫,需要host、user、password、database、charset等信息;

2.操作數據庫先創建游標;

3.執行指定的sql語句,如果涉及到增、刪、改數據庫必須要conn.commit(),提交事務

4.查詢獲取數據條數有三種方法fetchone、fetchmany、fetchall。

  • cursor.fetchone() :默認獲取查詢結果的第一條數據;
  • cursor.fetchmany(2) :獲取查詢結果的指定條數,比如獲取2條數據;
  • cursor.fetchall() :獲取查詢結果的所有數據;

5.需要注意的是,fetch獲取的數據默認是元組,如果想要字典類型,

cursor=pymysql.cursors.DictCursor;

6.先關閉游標,后關閉數據庫連接;

四、封裝數據庫類

01 封裝說明

在實際項目中,很多地方都有用到數據庫的操作,所以需要將數據庫相關操作進行封裝,方便其他模塊調用。

如下,在common目錄下,新建文件db_handler.py 用于封裝數據庫操作。

db_handler.py

import pymysql
class DBHandler:
    def __init__(self,host,port,user,password,
                 database,charset,**kwargs):
        # 連接數據庫服務器
        self.conn = pymysql.connect(host=host, port=port, user=user,password=password,
                                    database=database,cursorclass=pymysql.cursors.DictCursor,
                                    charset=charset,**kwargs)
        # 獲取游標
        self.cursor = self.conn.cursor()
    
    def query(self, sql, args=None,one=True):
        self.cursor.execute(sql, args)
        # 提交事務
        self.conn.commit()
        if one:
            return self.cursor.fetchone()
        else:
            return self.cursor.fetchall()
    def close(self):
        self.cursor.close()
        self.conn.close()
if __name__ == "__main__":
    db = DBHandler(host='127.0.0.1', port=3306,
                   user='ITester', password='123456',
                   database='ITester', charset='utf8')
    sql = 'select * from user limit 1;'
    data = db.query(sql)
    print(data)

以上就是Python接口自動化淺析pymysql數據庫操作流程的詳細內容,更多關于Python接口自動化pymysql數據庫操作的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • 利用python中pymysql操作MySQL數據庫的新手指南
  • python使用pymysql模塊操作MySQL
  • pymysql實現增刪改查的操作指南(python)
  • python 基于PYMYSQL使用MYSQL數據庫
  • python pymysql庫的常用操作
  • Python pymysql模塊安裝并操作過程解析
  • python數據庫操作mysql:pymysql、sqlalchemy常見用法詳解
  • 在python中使用pymysql往mysql數據庫中插入(insert)數據實例
  • Python使用pymysql模塊操作mysql增刪改查實例分析
  • python之pymysql模塊簡單應用示例代碼
  • wxpython+pymysql實現用戶登陸功能
  • 在Python中使用MySQL--PyMySQL的基本使用方法
  • Python 中使用 PyMySQL模塊操作數據庫的方法
  • 使用python連接mysql數據庫之pymysql模塊的使用
  • Python pymysql操作MySQL詳細

標簽:海南 南平 盤錦 大同 林芝 寧夏 普洱 漯河

巨人網絡通訊聲明:本文標題《Python接口自動化淺析pymysql數據庫操作流程》,本文關鍵詞  Python,接口,自動化,淺析,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python接口自動化淺析pymysql數據庫操作流程》相關的同類信息!
  • 本頁收集關于Python接口自動化淺析pymysql數據庫操作流程的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 天干天干夜爽爽AV都市天气网| 免费看又黄又爽又猛的网站| 国产影片小桃酱在线观看| 日本撒尿高清偷拍| 色狠狠婷婷97| 医生检查玩弄潮喷奶头| 国产综合制服丝袜在线| 男人吸女人的胸视频在线观看 | 欧洲老妇毛茸茸| 好吊妞视频这里有经典里有一 | 午夜香蕉爽爽爽AV视频| 草莓视频在线观看入口网站| 裸睡让攻玩奶头h男男文| 国产做受???一片二片| 国产成人亚洲欧美激情| 少女免费观看版高清| GOGOGO高清免费观看| 国产另类视频| 男女猛烈进出120秒动态图| 两女互慰高潮A片视频| 久久久久免费精品视频| 女生被男生插视频| 骚虎最新网址| 男生的??放男生的??游戏| 若妻の秘めた肉欲夫より| 玉势开男后菊打屁股| 国产专区路线| 在线精品国精品国产不卡| bl抽搐翻白高潮失禁h| 欧美videossexo肥婆| 樱花动漫无颜之月| FreeXXXX性女HD摔跤| 国产精品清纯白嫩视频| 美女a毛片| 乱翁系情十篇小说| 欧美一级欧美一级在线播放| 国产精品无码一区二区在线观 | 欧美黑人又大又粗XXXⅩ东京热| 冠希与阿娇实干13分钟视频| 嗯啊好棒| 免费聊骚APP|