表 A 中有个字段为 备注 remark,用户在添加备注的时候超过4000个中文字符,保存到数据库的时候失败!
这个时候就需要对字段做一个拓展,拓展为
- LONG 超长字符串
- NCLOB 根据字符集而定的字符数据
- CLOB 字符数据
本例就以LONG为例做一个示范.
第一步:新增一个为LONG类型的新字段remarkbak
alter table A add remarkbak long;
第二步:备份数据到新列remarkbak
update A set remarkbak=remark;
第三步:用PL/SQL结构语句更新需要设置的字段
DECLARE
LongValue A.remarkbak%type;
BEGIN
LongValue := '很长很长的一段字符串,emmmm,我非常的长~';
UPDATE A SET remarkbak = LongValue where id='xxxx';
COMMIT;
END;
第四步:删除旧的字段
alter table A drop column remark;
第五步:重命名新字段为旧字段名
alter table A rename column remarkbak to remark;