oracle可否直接改表字段数据类型?
oracle可否直接改表字段数据类型,我想把varchar改成clob类型,altertablePRO_CODE_STANDARDmodifyCONTENT_UBBclo...
oracle可否直接改表字段数据类型,我想把varchar改成clob类型,alter table PRO_CODE_STANDARD modify CONTENT_UBB clob;这条语句没有问题吧!可是运行时却不成功,有什么好的解决办法吗?
我不是同进修改两个,刚刚粘语句的时候,没粘好. 这个字段也不是主键也不是非空字段. 另外rjiang2008所说的,先改成long,再改成clob的方法也不行. 直接改数据类型,不管改成什么类型都不行. 我有另外一种方法,就是新建一个clob类型的临时字段,然后把原字段的数据拿过来,然后再删除原字段,再把临时字段名改成原子段名,但是这样就需求五条语句, 所有这些操作只为了修改字段类型到clob, 有没有可能把这些操作整成一条SQL语句. 展开
我不是同进修改两个,刚刚粘语句的时候,没粘好. 这个字段也不是主键也不是非空字段. 另外rjiang2008所说的,先改成long,再改成clob的方法也不行. 直接改数据类型,不管改成什么类型都不行. 我有另外一种方法,就是新建一个clob类型的临时字段,然后把原字段的数据拿过来,然后再删除原字段,再把临时字段名改成原子段名,但是这样就需求五条语句, 所有这些操作只为了修改字段类型到clob, 有没有可能把这些操作整成一条SQL语句. 展开
4个回答
展开全部
好像不能直接转,要把varchar2类型先转成long
SQL> desc test;
Name Type Nullable Default Comments
---- ------------ -------- ------- --------
COL VARCHAR2(10) Y
SQL> alter table test modify col long;
Table altered
SQL> desc test;
Name Type Nullable Default Comments
---- ---- -------- ------- --------
COL LONG Y
SQL> alter table test modify col clob;
Table altered
SQL> desc test;
Name Type Nullable Default Comments
---- ---- -------- ------- --------
COL CLOB Y
--补充
楼主上面那做法。好像没办法一条语句完成
增加字段--update---删原来字段---改字段名
只能一步步的做
还有刚才先改long在改clob字段没成功,我估计是
这张表现有数据不能做类型转换的原因吧。
可以先创建张表备份表在原数据放到这表中,然后再修改原表
字段类型,最后在把数据导入原表
试试看吧
SQL> desc test;
Name Type Nullable Default Comments
---- ------------ -------- ------- --------
COL VARCHAR2(10) Y
SQL> alter table test modify col long;
Table altered
SQL> desc test;
Name Type Nullable Default Comments
---- ---- -------- ------- --------
COL LONG Y
SQL> alter table test modify col clob;
Table altered
SQL> desc test;
Name Type Nullable Default Comments
---- ---- -------- ------- --------
COL CLOB Y
--补充
楼主上面那做法。好像没办法一条语句完成
增加字段--update---删原来字段---改字段名
只能一步步的做
还有刚才先改long在改clob字段没成功,我估计是
这张表现有数据不能做类型转换的原因吧。
可以先创建张表备份表在原数据放到这表中,然后再修改原表
字段类型,最后在把数据导入原表
试试看吧
展开全部
不行 lz别瞎忙活了 必须要三条以上的语句 除非你的表里没有数据才能修改字段类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不同同时修改2个表,你可以一个一个修改,并且如果所修改的列是主键列的话,需要先移除主键然后才能修改数据类型!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不同同时修改2个表
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询