为什么我在操作hr表空间中的数据时候一定要添上表空间名字?

caoi 2006-04-16 09:46:31
以这个简单的sql语句为例。

select * from hr.jobs

可以正常执行
而写成

select * from jobs

就会得到报错信息

ERROR 位于第一行,
ORA-00942 表或视图不存在

请问我该怎么做?介于问题比较简单,15分。

...全文
191 8 点赞 打赏 收藏 举报
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
caoi 2006-04-17
对不起,我需要用sys帐号以SQL*Plus方式登录。
  • 打赏
  • 举报
回复
tgm78 2006-04-17
建立公共同义词之后,就不需要加属主hr了
create public synonym jobs for hr.jobs;
  • 打赏
  • 举报
回复
对了,在SQL SERVER 里面 程序一般都用SA帐号连接的。自然可以访问所有的表。
在ORACLE 应用里一般不会用SYS帐号登路的。
  • 打赏
  • 举报
回复
MS SQLSERVER 也有啊 OWEN。TABLE 只不过好想默认大家使用样?
  • 打赏
  • 举报
回复
goldarcher2005 2006-04-17
加同义词,create synonym public.jobs for hr.jobs

  • 打赏
  • 举报
回复
caoi 2006-04-16
hr是[方案]目录下的一个项,是oracle作示例用的,我在上边做练习。不是用户名。
和hr平行的还有ctxsys,mdsys,odm,scott等。

模式对象我不知道是什么。请问我如何在sql语句中不写hr这个前缀而保证执行正常?
  • 打赏
  • 举报
回复
在这里hr不是表空间的名字,应该是用户名。也就是说当你用其他用户登陆时,想访问hr的jobs表,需要确定你要访问是hr的JOBS表。这也叫模式对象
  • 打赏
  • 举报
回复
caoi 2006-04-16
对,这个不叫表空间,我的描述有问题。但如何使sql语句中省去hr这个前缀呢?
  • 打赏
  • 举报
回复
相关推荐
发帖
基础和管理
加入

1.7w+

社区成员

Oracle 基础和管理
申请成为版主
帖子事件
创建了帖子
2006-04-16 09:46
社区公告
暂无公告