那是因为你的权限不足,
或访问其它用户的表时需加完整的名称,
如用户a访问用户b的表table1,则需写成b.table1, 例如:
SQL>conn a/password;
SQL>select * from b.table1; --a访问其它用户的表需要相应的权限。
或访问其它用户的表时需加完整的名称,
如用户a访问用户b的表table1,则需写成b.table1, 例如:
SQL>conn a/password;
SQL>select * from b.table1; --a访问其它用户的表需要相应的权限。
解决方案 »
- 报错ORA-01652:无法通过128(在表空间TEMP)扩展TEMP段
- 请问能不能帮我改一下这个代码?谢谢 建立级联删除触发器CASCADE_DELETE,当删除部门时,级联删除EMP表的雇员记录。
- windows2008 能否装oracle10g
- orapwd和alter user SYS identified by "123"修改密码有何不同
- 为什么删除表空间或者用户的时候报错(急)
- 在调用DBMS_UTILITY.FORMAT_CALL_STACK时返回信息不知如何理解
- 有人在LINUX下用ORCLE9I吗!
- 怎么使两个insert语句同时生效才执行
- 安装Oracle9i时的怪问题
- oracle12c的ogg数据采集add trandata出错
- sql*Plus 为何不能查询自创的表,在线等
- oracle与sqlserver的区别
问题是我在创建视图(含这个表)的时候提示表不存在
SQL>grant create view to user_a;
SQL>conn user_a/password;
SQL>create or replace view tab_view_name as
SQL>select * from tab_name;
上面代码成功执行。
我单独执行select * from '那个表' 时却没提示
你可以通过以下语句查询一下你的这些表是不是都属于该用户:
SQL>SELECT owner,table_name,tablespace_name FROM ALL_ALL_TABLES
SQL>WHERE owner='USER_NAME';
SQL> conn sys/password as sysdba
Connected to Oracle9i Enterprise Edition Release 9.2.0.1.0
Connected as SYSSQL>
SQL> select owner,table_name,tablespace_name from all_all_tables
2 where owner='HR'
3 ;OWNER TABLE_NAME TABLESPACE_NAME
------------------------------ ------------------------------ ------------------------------
HR COUNTRIES
HR DEPARTMENTS EXAMPLE
HR EMPLOYEES EXAMPLE
HR JOBS EXAMPLE
HR JOB_HISTORY EXAMPLE
HR LOCATIONS EXAMPLE
HR REGIONS EXAMPLE7 rows selected
又不是让你查询你自己创建的视图,
而是通过数据字典里的系统视图all_all_tables查看你的表是不是都属于同一个用户。
grant select any table to user;
too small
Cause: Rollback records needed by a reader for consistent read are overwritten
by other writers.
Action: If in Automatic Undo Management mode, increase the setting of
UNDO_RETENTION. Otherwise, use larger rollback segments.