用户需要把单行文本改成多行文本
1、数据库端处理
sql
select lwnr from FORMTABLE_MAIN_237 where lwnr is not null FORMTABLE_MAIN_237
有记录。
DESCRIBE OA.FORMTABLE_MAIN_237
LWNR VARCHAR2(999)
由999改成4000
ALTER TABLE OA.FORMTABLE_MAIN_237 MODIFY LWNR varchar2(4000)
DESCRIBE OA.FORMTABLE_MAIN_237
LWNR VARCHAR2(4000)
前台查到字段的ID是811191,找一个多行文本的ID一起比对
select * from workflow_billfield where id in (837690,811191)
参照正确的修改:
update workflow_billfield set fielddbtype='varchar2(4000)',fieldhtmltype = 2,textheight = 4 where id=811191
2、前台清除sql缓存
使用系统管理员访问 /commcache/cacheMonitor.jsp,点击重新加载配置
前台查看:
刚开始以为是要改成启用HTML的
这个底表是clob ,直接ALTER TABLE OA.FORMTABLE_MAIN_1286 MODIFY TESTTEST CLOB ;报错
这个一般是这样处理:
1、数据库端
sql
/*修改原字段名name为name_tmp*/
alter table OA.FORMTABLE_MAIN_1286 rename column TEST to name_tmp;
/*增加一个和原字段名同名的字段name*/
alter table OA.FORMTABLE_MAIN_1286 add TEST clob
/*将原字段name_tmp数据更新到增加的字段name*/
update OA.FORMTABLE_MAIN_1286 set TEST=trim(name_tmp);
/*更新完,删除原字段name_tmp*/
alter table OA.FORMTABLE_MAIN_1286 drop column name_tmp;
/*更改字段前台类型*/
update workflow_billfield set fielddbtype='clob)',fieldhtmltype = 2,type = 2,textheight = 4 where id=837190
2、前台清除sql缓存
使用系统管理员访问 /commcache/cacheMonitor.jsp,点击重新加载配置
但在验证功能时发现不对。最终改成了前面的方案。直接扩字段长度。不需要作类型的转换。