首页 > 解决方案 > 无法删除表 Oracle

问题描述

我无法从我的数据库中删除表。

对于查询select owner from ALL_TABLES where TABLE_NAME ='db_schema_version';,我将结果视为 OWNER_FC

对于查询show user;,我看到结果 USER 是“OWNER_FC”

但是当我尝试使用查询删除表时,drop table db_schema_version cascade constraints;我收到以下错误:

drop table db_schema_version cascade constraints
Error report -
ORA-00942: table or view does not exist
00942. 00000 -  "table or view does not exist"
*Cause:    
*Action:

既然我是店主,我不明白为什么我不能放下桌子?我认为这个表是由创建的,Flyway但我不确定这是否是相关信息

标签: oracle11gflyway

解决方案


对于查询

select owner from ALL_TABLES where TABLE_NAME ='db_schema_version';

我看到结果为OWNER_FC

表名在数据字典中是小写的。这意味着您需要在查询中以小写形式提供表名,您需要将其括在双引号中,并且您可能需要指定架构:

DROP TABLE "db_schema_version" CASCADE CONSTRAINTS;

或者

DROP TABLE OWNER_FC."db_schema_version" CASCADE CONSTRAINTS;

推荐阅读