如何更新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('命中')
如何更新clob类型的内容的更多相关文章
- jsp里更新Clob类型字段数据
ResultSet rs = null; Connection conn = new dbconn().getconnect(); Statement stmt = null; int news=0; ...
- Spring JDBC处理CLOB类型字段
以下示例将演示使用spring jdbc更新CLOB类型的字段值,即更新student表中的可用记录. student表的结构如下 - CREATE TABLE student( ID INT NOT ...
- Java更新Oracle的clob类型字段
Java更新Oracle的clob类型字段 1.查询该clob字段 2.处理该clob字段查询结果 3.更新该clob字段查询结果 1.查询该clob字段 <select id="se ...
- Oracle中如何查询CLOB字段类型的内容
注:本文来源于:<Oracle中如何查询CLOB字段类型的内容> 语法 select * from table_name where dbms_lob.instr(字段名(clod类型), ...
- .Net处理Oracle中Clob类型字段总结
最近在做项目中用到Clob这个字段,Clob是存储无限长字符的Oracle字段,用的时候网上找资料找了好久,内容不是很多,大部分都不能用,当然也有可以用的,测试了不同版本,整理了一下,给大家在做项目的 ...
- Oracle中Blob和Clob类型的区别与操作
Oracle中Blob和Clob类型 1.Oracle中Blob和Clob类型的区别 BLOB和CLOB都是大字段类型,BLOB是按二进制来存储的,而CLOB是可以直接存储文字的.其实两个是可以互换的 ...
- Hibernate保存Blob和Clob类型的数据
虽然非常不建议在数据库中保存Blob和Clob类型的数据,但真的要有这样的需求呢?这里记录一下使用Hibernate如何向数据库中保存Blob和Clob数据. Oracle和MySql在Blob类型上 ...
- Oracle处理Clob类型数据入库(String入库)
从网上查找一堆参考,要么语焉不详,要么不可行.自己鼓捣了一堆可以正常入库了.请看最后: insert into CP_V_INFO" + "(ID, "+ "P ...
- 问题:oracle CLOB类型;结果:oracle中Blob和Clob类型的区别
BLOB和CLOB都是大字段类型,BLOB是按二进制来存储的,而CLOB是可以直接存储文字的.其实两个是可以互换的的,或者可以直接用LOB字段代替这两个.但是为了更好的管理ORACLE数据库,通常像图 ...
随机推荐
- hashlib模块configparser模块logging模块
hashlib模块 算法介绍 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长 ...
- Centos下磁盘管理---分区
1.磁盘分区格式说明 linux分区不同于windows,linux下硬盘设备名为(IDE硬盘为hdx(x为从a—d)因为IDE硬盘最多四个,SCSI,SATA,USB硬盘为sdx(x为a—z ...
- AngularJS基础01 从HelloWorld说起
作者:arccosxy 转载请注明出处:http://www.cnblogs.com/arccosxy/ 准备工作 首先,创建一个名为index.html的HTML文件,代码如下: <!DOC ...
- JavaScript外部函数调用AngularJS的函数、$scope
x 场景: 需要在用FusionCharts画的柱状图中添加点击事件,But弹出框是Angularjs搞的,我想的是直接跳到弹出框的那个路由里,然后在弹出框的控制器中绑定数据即可: /* 点击事件 * ...
- [No0000189]改善C#程序的建议10:用Parallel简化Task
在命名空间System.Threading.Tasks下,有一个静态类Parallel简化了在同步状态下的Task的操作.Parallel主要提供了3个有用的方法:For.ForEach.Invoke ...
- 【libreOJ模板】并查集(输入挂,取模与find优化)
1.了解了各种输入挂性orz,找到了一个合适的 2.find用while写能快一倍,并且能被数据卡掉 3.取模只能快十几毫秒,但也能被数据卡掉 取模find双优化是1997mm过的 再加一个性价比较高 ...
- Django:模板template(二)
将跨站请求伪造和验证码的东西记一下 CSRF Cross Site Request Forgery.跨站请求伪造 链接:GET请求:表单:POST请求 某些恶意的网站上,包含链接.表单.按钮.Java ...
- [Day3]Scanner类、Random类、流程控制语句
1.Scanner类 (1)Scanner类属于引用数据类型 数据类型 变量名=new 数据类型(); (2)每种引用类型都有自己的功能 变量.功能名(); (3)Scanner类是引用数据类型的一种 ...
- Chap2:区块链基本技术[《区块链中文词典》维京&甲子]
- [dpdk] service core
dpdk 17.11 增加了一组新的API,serivce core 如命名,就是用一组core跑service函数. 我自己的测试程序如下: https://github.com/tony-caot ...