当前位置:数据库 > Oracle >>

oracle怎样区分表和视图

平时用的dba_sys_privs,user_users这些东西到底是表还是视图,怎么确定它是表还是视图!
答案:那要看她的表结构啊。如果你用的工具是PL/SQL、  TOAD等工具会自动的把它们分为不同的类别啊,如果是表得话就会在 table类别下。如果是view 会放在view下,而且看它们的结构会不一样的。
也可以通过命令查询:
Select object_name From user_objects Where object_type='VIEW';  --查看所有视图  
Select object_name From user_objects Where object_type='TABLE'; --查看所有表
select object_type  from user_objects where object_name='xxxxx'--跟住名字查看数据类型
其他:select object_name,object_type from dba_objects where object_name in ('DBA_SYS_PRIVS','USER_USERS'); 举个例子
如果你是大学数据库管理员,为学校每个人都建立了户名和密码。记录在一个表中,如果大学还有分校,分校里也有数据库管理员,你可以给他建立个视图。因为查看视图的内容实际是运行建立视图的sql语句。所以当用户自己修改自己用户信息时,主表改变,查询视图时也同时输出最新的信息。如果你给分校里数据库管理员建立是表,那么用户自己修改自己用户信息时,必须得把原始表和新建表的内容都改了才行。否则你和分校里数据库管理员看到的信息不一样,这样就比建视图增加了许多麻烦。同时新建表也要占硬盘的存储空间。而查看视图的内容实际是运行建立视图的sql语句,所以不占硬盘的存储空间。
另外,虚机团上产品团购,超级便宜 举个例子
如果你是大学数据库管理员,为学校每个人都建立了户名和密码。记录在一个表中,如果大学还有分校,分校里也有数据库管理员,你可以给他建立个视图。因为查看视图的内容实际是运行建立视图的sql语句。所以当用户自己修改自己用户信息时,主表改变,查询视图时也同时输出最新的信息。如果你给分校里数据库管理员建立是表,那么用户自己修改自己用户信息时,必须得把原始表和新建表的内容都改了才行。否则你和分校里数据库管理员看到的信息不一样,这样就比建视图增加了许多麻烦。同时新建表也要占硬盘的存储空间。而查看视图的内容实际是运行建立视图的sql语句,所以不占硬盘的存储空间。
另外,虚机团上产品团购,超级便宜 视图 

上一个:oracle 对一张表里一个字段的内容进行反复查询的最有效方法
下一个:在校学生,如何获得oracle实习机会?需要做些什么?

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,