在做python自動化時,結果斷言很重要,相較數據固定校驗(數據維護比較復雜),我們更期望實現動態的校驗數據。
數據存儲在數據庫或者redis中,因此學會python操作數據庫和redis勢在必行。
安裝和使用:
安裝pymysql
pipinstallpymysql
導入pymysql
importpymysql
數據庫操作
1.首先,連接數據庫
conn=pymysql.connect(host='host',user='user',password='password',database='database',charset='utf8')
2.獲取游標對象
#得到一個可以執行SQL語句的光標對象,默認輸出為元組,如果字典形式輸出:cursor=conn.cursor(pymysql.cursors.DictCursor)
cursor=conn.cursor()
3.執行sql語句
result=cursor.execute(sql)
4.關閉光標對象
cursor.close()
5.關閉數據庫連接
conn.close()
6.其他
conn.commit()為提交事務:
因為pymysql模塊默認是啟用事務的。如果不提交,相當于沒有執行。
一般在增刪改sql執行后,需要提交事務。
cursor.executemany批量操作數據。
適用于增刪改。
執行sql時,如果發生異常,可進行異常處理-回滾。
try:
result=cursor.executemany(sql_add,data)
conn.commit()
exceptExceptionase:
conn.rollback()
示例
1.增加數據
sql_add='insertintouser(name,pwd)VALUES(%s,%s);'
#執行SQL語句
result=cursor.execute(sql_add,['admin','admin123'])
#提交事務
conn.commit()
2.刪除數據
sql_del='deletefromuserwherename='admin';
#執行SQL語句
result=cursor.execute(sql_del,['admin','admin123'])
conn.commit()
3.修改數據
sql_update='updateusersetname=%swherename=%s';
result=cursor.execute(sql_update,['admin','admin123'])
conn.commit()
4.查詢數據
#定義要執行的SQL語句
sql='select*fromuserwherename=%sandpwd=%s;'
#執行SQL語句
result=cursor.execute(sql,['admin','admin123'])
#獲取一個
print(cursor.fetchone())
#獲取多個,默認為1
print(cursor.fetchmany(2))
#獲取所有
print(cursor.fetchall())
以上內容為大家介紹了Python操作MySQL,希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構:千鋒教育。http://www.dietsnews.net/