Oracle笔记

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 09:50 点击:

--(1)得到t_User表的字段
select * from user_tab_columns where table_name='t_User';

--(2)得到t_User表的约束,包括主外键
select * from user_constraints where table_name='t_User';

--(3)得到t_User表的索引
select * from user_indexes where table_name='t_User';

--(4) 查询表所属的用户

-- 用 sys 用户登陆,例如:我要查询名为 EMP 的表,在哪些用户下有:

sys@TBWORA> CONN/AS SYSDBA已连接。

sys@TBWORA>SELECT table_name, ownerfrom dba_tables2where table_name='EMP';

-- (5)两条SQL的区别

select * from (select a.custom_no, b.debit_ac from custom a left join custdep b on a.custom_no = b.custom_no and b.dep_no = 'EE') t where t.debit_ac is null;

select a.custom_no, b.debit_ac from custom a left join custdep b on a.custom_no = b.custom_no and b.dep_no = 'EE' and b.debit_ac is null;


第一个是基于查询过的结果的查询,而第二个是基于一张表建立起的链接的查询。

第一个select语句从集合
(select a.custom_no, b.debit_ac
  from custom a
  left join custdep b
  on a.custom_no = b.custom_no
  and b.dep_no = 'EE')
里找出满足条件where t.debit_ac is null;的结果集。

第二个select语句从表custom a 和custdep b 找出满足条件
a.custom_no = b.custom_no
  and b.dep_no = 'EE'
  and b.debit_ac is null;
的结果集。

(6)Oracle有两个具有dba角色的用户,分别是sys与system,他们都可以以sysdba身份登录数据库。既然system具有dba角色,为什么还分配他sysoper身份?
        1) 【sys】所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。sys用户拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。
【system】用户用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息。system用户拥有普通dba角色权限。
        2) 其次的区别,权限的不同。
【system】用户只能用normal身份登陆em,除非你对它授予了sysdba的系统权限或者syspoer系统权限。
【sys】用户具有“SYSDBA”或者“SYSOPER”系统权限,登陆em也只能用这两个身份,不能用normal。

作者“John Xu”
 

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • Table函数使用简介
    • Oracle数据库Constraint约束的常用操作及异常处理
    • Bulk Collect性能分析(zz)
    • export/import的使用
    • OCP043第十五讲 Database Security
    • ORACLE10gr2数据导入MySQL方案
    • oracle 让sys用户可以使用isqlplus
    • 在oracle数据库下使用iSQL*Plus DBA访问数据库
    • Oracle行列转换小结
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1