甲骨文显示701怪异表,而不是默认表

阿卜杜勒哈菲德·埃尔贝卡维

我刚刚安装了OracleDB10,因为我们在学校使用它。我通过以下方式连接到数据库:

hr/password as sysdba;

然后,我执行了以下代码,以显示我们曾在课堂上使用过的一些默认表(工作表,员工表,部门表和类似表):

select table_name from user_tables;

结果,我得到了701个表,其中许多都有美元符号,我仔细地浏览了结果,发现我需要的表在结果内,例如表“ COUNTRIES”

但是,如果我尝试做

desc countries; 

或者

SELECT * FROM COUNTRIES; 

它回显“不正确的表”错误。

知道是什么原因造成的,以及如何解决?

都灵

您看到的大多数表都是系统表,可用于查询有关Oracle的元信息。其他表可能包含样本数据。

错误消息表明表要么在不同的架构中,要么您无权访问它们。

如果我没记错的话,COUNTRIES是HR模式中的样本表。因此,如果您与HR用户建立联系,则应该能够访问它们。尝试以普通用户身份连接(不以sysdba身份连接):

hr/password

或将schmea名称放在表名称的前面:

select * from HR.COUNTRIES;

顺便说一句:模式直接链接到用户。因此,用户和模式或多或少是相同的,并且通常也称为所有者,例如在DBA_TABLES中。

如果权限不足,则需要授予它(使用SYSDBA用户):

GRANT SELECT, INSERT, UPDATE, DELETE ON HR.COUNTRIES TO ABDEL;

(ABDEL或您的用户名。)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章