Oracle 表空间修改字段大小

1.修改字段大小

当表中已经存在数据,就不能直接修改某字段大小,需要新建一个字段来过渡

ALTER TABLE TABLE RENAME COLUMN GRP TO FUND_GRP_1;
ALTER TABLE TABLE ADD GRP VARCHAR2(2);
UPDATE TABLE SET GRP = CAST(FUND_GRP_1 AS VARCHAR2(2));
ALTER TABLE TABLE DROP COLUMN FUND_GRP_1;

2.检查数据库的invalid object.

字段修改之后往往会导致数据库中产生无效对象,需要进行检查

SELECT owner,
  object_name,
  object_type,
  status
FROM dba_objects
WHERE status = 'INVALID'
ORDER BY owner,
  object_type,
  object_name;

3.重新编译无效对象

编译整个数据库中的无效对象:

SQL>@$ORACLE_HOME/rdbms/admin/utlrp.sql

编译数据库中单个的无效对象

  编译无效包体:

    alter package package_name complie;

  编译无效函数:

    alter function function_name complies;
作者:sylarinfo
出处:博客园sylarinfo的技术博客--http://www.cnblogs.com/sylarinfo/
您的支持是对博主最大的鼓励,感谢您的认真阅读。
本文如未在开头表明转载,则版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/sylarinfo/p/3422274.html