我正在尝试使用以下语法更改表上的列:
ALTER TABLE MY_SCHEMA.latest_workspace MODIFY (short_name VARCHAR2(10) NOT NULL);
这是我得到的错误:
在命令的第1行开始出错:ALTER TABLE MY_SCHEMA.latest_workspace MODIFY(short_name VARCHAR2(10)NOT NULL) 错误报告:SQL错误:ORA-00942:表或视图不存在 00942. 00000 - “表或视图不存在” *原因:
*操作:
但是,我可以在物理上看到该表,并查询:
SELECT short_name FROM MY_SCHEMA.latest_workspace;
此外,所有正确的权限都授予我登录的用户。是否有其他我忘记的事情会导致ALTER变成这样?
谢谢!
答案 0 :(得分:2)
看起来MY_SCHEMA.latest_workspace
不是一张桌子。它可能是一个视图,或者它可能是某个其他模式中对象的同义词。试试这个查询,找出:
select object_type
from user_objects
where object_name = 'LATEST_WORKSPACE';
您需要采取的行动取决于结果。
答案 1 :(得分:0)
我发现解决此问题的唯一方法是重新创建表。 (重命名,删除约束和索引,重新创建原始表,插入记录)。
找不到原因,但听起来像是个错误。