如何更新clob類型的內容


一、手工測試流程:

 1、測試需求(待執行用例)

2、標准化測試流程

1/5

 --修改 result_info
 --用戶風控信息表
  select sysdate,t.*,t.rowid from finser.td_s_cro_account t 
   where t.cro_id = 14 and user_name = '王亮'and user_phonetel='13986671119'
  order by t.create_time desc;
  
  --修改后提交
  commit;

 

2/5

  Delete from finser.TD_S_CRO_ACCOUNT_HANDLE_RECORD a where a.name = '王亮';
   commit;

3/5

 UPDATE finser.cf_loan_release a SET a.status = 50 WHERE a.order_no ='MFJK-SJInTest2021-11-05-05-39-20-1' ; 
    commit;

4/5(可選)

   
 --切時間后提現超時執行以下腳本
 
 UPDATE finser.cf_main_control b SET b.status =10 WHERE b.status = -1 and b.order_no ='MFJK-SJInTest2021-11-05-05-39-20-1' ; 
  commit;

5/5

  --查看是否命中
  --用戶風控記錄表,查看REMARK
  select sysdate,t.*,t.rowid from finser.TD_S_CRO_ACCOUNT_HANDLE_RECORD t 
  where name ='王亮'
  order by t.create_time desc;

3、流程重復性說明

1/5,2/5,3/5,5/5為重復操作

1/5修改變量的值;5/5查看結果

二、解決方案研究

 

import requests
import json
import unittest
import HTMLTestRunner
#- [x] sqlplus finser/finser2015X@//10.139.39.43:1524/sjw2
import pandas as pd
import time

import pymysql
import cx_Oracle
#解決亂碼問題
import os
os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8'

id1=18  #風控id
bianliang = 'ir_m3_cell_x_name_cnt'

#B環境
# myydb =cx_Oracle.connect(host = '10.139.39.43',user = 'finser',passwd = 'finser2015X',port=1524,database ='sjw2',charset='utf-8' )
#A環境
mydb=cx_Oracle.connect("finser/finser2015X@//223.203.128.4:15331/sjw1")
mycursor = mydb.cursor()

#1/5
'''
如何更改clob類型的數據,以下可以讀取出來,但是更新不成功???
'''
sql = " select t.RESULT_INFO from finser.td_s_cro_account t where t.cro_id = {0} and user_name = '王亮'and user_phonetel='13986671119'  ".format(id1)
mycursor.execute(sql)
pram = []
for i in mycursor:
    text = i[0].read()
    pram.append(text)
# print('text:',text)
# print('pram:',pram)
print('text的類型:',type(text)) #text的類型: <class 'str'>
print('pram的類型:',type(pram)) #pram的類型: <class 'list'>


dict1 = eval(text) #將字符串類型數據轉變為字典類型
print('dict1的類型',type(dict1))
print('dict1',dict1["data"])

dict2 = dict1["data"]
print('dict2的數據類型:',type(dict2))  #dict2的數據類型: <class 'dict'>
print('取出一個變量的值',dict2[bianliang])

# mydb.close()
# mycursor.close()

# dict2[] = 0

#2/5
sql2 = "Delete from finser.TD_S_CRO_ACCOUNT_HANDLE_RECORD a where a.name = '王亮';"
mycursor.execute(sql2)

#設置等待n秒后再繼續執行后面的程序
time.sleep(2)

#3/5
sql3 = "UPDATE finser.cf_loan_release a SET a.status = 50 WHERE a.order_no ='MFJK-SJInTest2021-11-05-05-39-20-1';"
mycursor.execute(sql3)


#設置等待n秒后再繼續執行后面的程序
time.sleep(3)

#5/5
#查詢結果是否命中
sql4 = "select t.REMARK,T.MESSAGE from finser.TD_S_CRO_ACCOUNT_HANDLE_RECORD t where name ='王亮'"
mycursor.execute(sql4)

myresult = mycursor.fetchall()
# print(myresult)
# print(type(myresult)) #<class 'list'>
mystr = str(myresult) #list轉換為str
if 'Y' in mystr:
    print('未命中')
if 'N' in mystr:
    print('命中')

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM