Python拼接SQL字串的方法

2021-09-03 00:24:13 字數 1132 閱讀 9510

在做介面自動化測試的時候,最為常見的是get、post兩種請求型別的介面。對於get請求,直接將引數寫在url後面,以"?"隔開,引數的鍵和值之間用「=」隔開,不同引數的之間用「&」隔開。這樣組裝成乙個完成的http請求資料,比如

對於post型別的介面,將引數以json封裝在body裡面,傳送給伺服器。在測試的時候,對於get型別的介面,當傳入引數需要動態調整,且滿足一定的規律時,利用簡單的字串拼接即可實現。如下所示使用"str1" + "str2"的方式就可以實現字串拼接

def get_account_by_name(account_name="[email protected]"):

url = "" + account_name

print url

inte***ce_data = get_url_response(url)

return inte***ce_data

if __name__ == '__main__':

print get_account_by_name("hanyan")

# 執行結果:

# hanyan

#

在做斷言的時候,往往需要從資料庫中讀取相應的內容,此時的引數應該與介面請求引數保持一致。因此,在使用sql查詢的時候需要使用模糊查詢(參考:使用方法參考一種字串格式化的語法"%s",基本用法是將值插入到%s佔位符的字串中,如下所示:

def get_account_by_name(account_name="[email protected]"):

"""獲取 "" + account_name介面

在資料庫中相應的資訊

"""account_info_sql = "select count(account_name) as num, account_name from account_info where " \

"account_name regexp '%s'" % account_name

self.cursor.execute(account_info_sql)

database = self.cursor.fetchone()

return database

SQL 拼接字串

寫sql的時候有時候用到需要拼接多個字段或者在查詢出結果的字段裡加入一部分固定的字串。方法一 在查詢到的結果後,用 去拼接。這種方法就不在贅述。方法二 使用資料庫提供的方法concat a,b oracle 中concat a,b 只能有兩個引數,如果concat中連線的值不是字串,那麼oracle...

sql字串拼接

oracle 使用 或者concat sql select aaa bbb from dual aaa bbb aaabbb sql select concat aaa ccc from dual concat aaa aaaccc mysql中,使用 如果字串全是數字則轉化為數字,否則轉換為0,也...

sql字串拼接

在sql語句中經常需要進行字串拼接,以sqlserver,oracle,mysql三種資料庫為例,因為這三種資料庫具有代表性。sqlserver select 123 456 oracle select 123 456 from dual 或select concat 123 456 from du...