1、新增一列varchar2类型,varchar2类型最大4000:alter table test add(c varchar2(4000))
2、将clob列数据更新到新增列:update test set c=clob_col
3、删除clob列:alter table test drop column clob_col
4、将新增列名更改回原来列名:alter table test rename column c to clob_col
这个问题比较麻烦,从你描述的情况来看,应该是这张表的字段总大小超过了预设的数据库表空间pagesize(根据数据库版本不同,一般有4KB/8KB/32KB)。不能直接修改表空间pagesize,所以比较麻烦,必须重建表空间和表格。
根据你的情况,建议删除不需要的字段,再增加这个varchar(80)试试;或者干脆新建一张表格,但是建议字段不要太多太长。
Alter table mytbl1 ADD COLUMN name char(20) ADD COLUMN age int注意,每个新加的column前面都必须要有: ADD COLUMN.
如果表中已经有数据了,新加的column必须为NULL 或者 有default值
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)