python介面自動化學習(四)資料庫操作

2021-10-04 08:48:32 字數 1960 閱讀 5476

給指令碼新增運算元據庫功能

configdb.py**:

import pymysql

from flychordinte***cetest.readconfig import get_mysql

# 獲取連線方法

defget_db_conn()

: conn = pymysql.connect(host=get_mysql(

'host'),

port=

int(get_mysql(

'port'))

, user=get_mysql(

'username'),

passwd=get_mysql(

'password'),

db=get_mysql(

'database'),

charset=

'utf8'

)# 如果查詢有中文,需要指定測試集編碼

return conn

# 封裝資料庫查詢操作

defquery_db

(sql)

: conn = get_db_conn(

)# 獲取連線

cur = conn.cursor(

)# 建立游標

cur.execute(sql)

# 執行sql

result = cur.fetchall(

)# 獲取所有查詢結果

cur.close(

)# 關閉游標

conn.close(

)# 關閉連線

return result # 返回結果

# 封裝更改資料庫操作

defchange_db

(sql)

: conn = get_db_conn(

)# 獲取連線

cur = conn.cursor(

)# 建立游標

try:

cur.execute(sql)

# 執行sql

conn.commit(

)# 提交更改

except exception as e:

conn.rollback(

)# 回滾

finally

: cur.close(

)# 關閉游標

conn.close(

)# 關閉連線

# 封裝常用資料庫操作

defcheck_user

(name)

:# 注意sql中''號巢狀的問題

sql =

"select * from company where company_name = '{}'"

.format

(name)

result = query_db(sql)

return result

# return true if result else false

defadd_user

(name, password)

: sql =

"insert into user (name, passwd) values ('{}','{}')"

.format

(name, password)

change_db(sql)

defdel_user

(name)

: sql =

"delete from user where name='{}'"

.format

(name)

change_db(sql)

if __name__ ==

'__main__'

:print

(check_user(

'測試'

))

這個比較簡單,不多做解釋,注意資料型別就好

python介面自動化學習之路(4)

1.迴圈讀取excel裡的case 2.將響應結果寫入乙個新的excel 需要引入xlwt import requests import xlrd import json import xlutils import xlwt import time excelfile r users documen...

python介面自動化學習之函式三

可復用 可讀性強 def add a,b return a b print add 2,3 a指向2,b指向3 print add a 3,b 2 a指向3,b指向2 print add b 3,a 2 a指向2,b指向3函式中可以定義預設引數,但是預設引數要放在後面,非預設引數要放到前面。使用函式...

python介面自動化學習七之反射詳解

反射 通過字串去操作物件的屬性和方法,是字串形式.可進行反射操作的物件 例項化物件 類 其他模組 本模組 getattr 根據字串的形式去物件中尋找東西 hasattr 根據字串的形式去某個物件中判斷東西是否存在 setattr 根據字串的形式去某個物件中設定東西 delattr 根據字串的形式去某...