oracle 字典表查询

1.oracle 字典表查询

 /*显示当前用户*/
show user
在sql plus中可用,在pl sql中不可用

/*查看所有用户名*/ 
select username,user_id,created from all_users;

/*查看当前用户的用户详情*/ 
select username,user_id,account_status,lock_date,expiry_date,default_tablespace,temporary_tablespace,created,initial_rsrc_consumer_group,external_name from user_users;

/*查看数据库的版本*/ 
select product,version,status from product_component_version;

/*查看当前用户的用户权限,系统权限和表级权限*/ 
select username,granted_role,admin_option,default_role,os_granted from user_role_privs;
select username,privilege,admin_option from user_sys_privs;
select grantee,owner,table_name,grantor,priviege,granttable,hierarchy from user_tab_privs;

查看当前用户的缺省表空间
SQL>select username,default_tablespace from user_users; 

  查看当前用户的角色
SQL>select * from user_role_privs;

  查看当前用户的系统权限和表级权限
SQL>select * from user_sys_privs;
SQL>select * from user_tab_privs;

  查看用户下所有的表
SQL>select * from user_tables;

  显示用户信息(所属表空间)
select default_tablespace,temporary_tablespace
from dba_users where username=‘GAME‘;

  1、用户

  查看当前用户的缺省表空间
SQL>select username,default_tablespace from user_users;

  查看当前用户的角色
SQL>select * from user_role_privs;

  查看当前用户的系统权限和表级权限
SQL>select * from user_sys_privs;
SQL>select * from user_tab_privs;

  显示当前会话所具有的权限
SQL>select * from session_privs;

  显示指定用户所具有的系统权限
SQL>select * from dba_sys_privs where grantee=‘GAME‘;

  显示特权用户
select * from v$pwfile_users;

  显示用户信息(所属表空间)
select default_tablespace,temporary_tablespace
from dba_users where username=‘GAME‘;

  显示用户的PROFILE
select profile from dba_users where username=‘GAME‘;

  
2、表

  查看用户下所有的表
SQL>select * from user_tables;

  查看名称包含log字符的表
SQL>select object_name,object_id from user_objects
where instr(object_name,‘LOG‘)>0;

  查看某表的创建时间
SQL>select object_name,created from user_objects where object_name=upper(‘&table_name‘);

  查看某表的大小
SQL>select sum(bytes)/(1024*1024) as "size(M)" from user_segments
where segment_name=upper(‘&table_name‘);

  查看放在Oracle的内存区里的表
SQL>select table_name,cache from user_tables where instr(cache,‘Y‘)>0;

  3、索引

  查看索引个数和类别
SQL>select index_name,index_type,table_name from user_indexes order by table_name;

  查看索引被索引的字段
SQL>select * from user_ind_columns where index_name=upper(‘&index_name‘);

  查看索引的大小
SQL>select sum(bytes)/(1024*1024) as "size(M)" from user_segments
where segment_name=upper(‘&index_name‘);

  4、序列号

  查看序列号,last_number是当前值
SQL>select * from user_sequences;

  5、视图

  查看视图的名称
SQL>select view_name from user_views;

  查看创建视图的select语句
SQL>set view_name,text_length from user_views;
SQL>set long 2000; 说明:可以根据视图的text_length值设定set long 的大小
SQL>select text from user_views where view_name=upper(‘&view_name‘);

  6、同义词

  查看同义词的名称
SQL>select * from user_synonyms;

  7、约束条件

  查看某表的约束条件
SQL>select constraint_name, constraint_type,search_condition, r_constraint_name
from user_constraints where table_name = upper(‘&table_name‘);

  SQL>select c.constraint_name,c.constraint_type,cc.column_name
from user_constraints c,user_cons_columns cc
where c.owner = upper(‘&table_owner‘) and c.table_name = upper(‘&table_name‘)
and c.owner = cc.owner and c.constraint_name = cc.constraint_name
order by cc.position;

  8、存储函数和过程

  查看函数和过程的状态
SQL>select object_name,status from user_objects where object_type=‘FUNCTION‘;
SQL>select object_name,status from user_objects where object_type=‘PROCEDURE‘;

  查看函数和过程的源代码
SQL>select text from all_source where owner=user and name=upper(‘&plsql_name‘);

 查看表与主键的关系:
 select b.table_name, column_name from
(select table_name, constraint_name from user_constraints where constraint_type = ‘P‘) a,
user_cons_columns b
 where a.constraint_name = b.constraint_name
   and a.table_name = b.table_name
 order by b.position;
时间: 2024-10-10 00:46:35

oracle 字典表查询的相关文章

oracle系统表查询

oracle查询用户下的所有表 select * from all_tab_comments -- 查询所有用户的表,视图等select * from user_tab_comments -- 查询本用户的表,视图等select * from all_col_comments --查询所有用户的表的列名和注释.select * from user_col_comments -- 查询本用户的表的列名和注释select * from all_tab_columns --查询所有用户的表的列名等信息

Oracle锁表查询和解锁方法

数据库操作语句的分类 DDL:数据库模式定义语言,关键字:create DML:数据操纵语言,关键字:Insert.delete.update DCL:数据库控制语言 ,关键字:grant.remove DQL:数据库查询语言,关键字:select oracle表在什么情况下会被锁住 DML锁又可以分为,行锁.表锁.死锁 行锁:当事务执行数据库插入.更新.删除操作时,该事务自动获得操作表中操作行的排它锁. 表级锁:当事务获得行锁后,此事务也将自动获得该行的表锁(共享锁),以防止其它事务进行DDL

oracle 多表查询

oracle 多表查询  1对多    多个数据放到一个字段内 select  id,zhzxm,fzhzxm,ltrim(max(sys_connect_by_path(xm, ',')), ',') xm from ( select id,zhzxm,fzhzxm,xm,row_number() over(partition by id order by lrsj) rn  --标记相同的字段 from (select t2.id id,t2.zhzxm zhzxm,t2.fzhzxm fz

Oracle 多表查询(1)

一.基本概念 多表查询的语法如下: SELECT [DISTINCT] * | 字段 [别名] [,字段 [别名] ,-]FROM 表名称 [别名], [表名称 [别名] ,-][WHERE 条件(S)][ORDER BY 排序字段 [ASC|DESC] [,排序字段 [ASC|DESC] ,-]]; 但是如果要进行多表查询之前,首先必须先查询出几个数据 -- 雇员表和部门表中的数据量,这个操作可以通过COUNT()函数完成. 范例:查询emp表中的数据量 --返回了14条记录 SELECT C

Oracle多表查询与数据更新

2.1 多表查询 2.1.1 多表查询的基本语法(重点) 多表查询语法如下: SELECT {DISTINCT} *|查询列1 别名1,查询列2 别名2 FROM 表名称1 别名1,表名称2 别名2 {WHERE 条件(s)} {ORDER BY 排序字段 ASC|DESC,排序字段 ASC|DESC} 例:同时查询emp和dept表 SQL> select * from emp,dept; 发现返回了56条数据,emp一个才14条,dept表才4条.56=14*4. 查询emp表的记录数: S

Oracle 锁表查询及解锁

如果对 Oracle 数据表中的数据进行 增删改 操作时卡住无响应,很可能是表已被锁定.使用下面的命令可以解决锁定问题. 锁表状态查询. 直接复制粘贴就可以. --锁表查询SQL SELECT object_name, machine, s.sid, s.serial#  FROM gv$locked_object l, dba_objects o, gv$session s  WHERE l.object_id = o.object_id  AND l.session_id = s.sid;

oracle多表查询

基本语法多表查询 笛卡尔积在SQL中的实现方式既是交叉连接(Cross Join).全部连接方式都会先生成暂时笛卡尔积表.笛卡尔积是关系代数里的一个概念,表示两个表中的每一行数据随意组合. -- 笛卡尔积 select * from emp, dept; -- 使用公共字段,去掉笛卡尔积 select * from emp, dept where emp.deptno = dept.deptno; -- 查询出每一个雇员的姓名,工作,雇员的直接上级领导的姓名 -- 在emp表中的MGR表示一个雇

Oracle 多表查询(2)

四.统计函数及分组查询 1.统计函数 在之前学习过一个COUNT()函数,此函数的功能可以统计出表中的数据量,实际上这个就是一个统计函数,而常用的统计函数有如下几个: COUNT():查询表中的数据记录: AVG():求出平均值: SUM():求和: MAX():求出最大值: MIN():求出最小值: 范例:测试COUNT().AVG().SUM() 统计出公司的所有雇员,每个月支付的平均工资及总工资. SELECT MAX(sal),MIN(sal) FROM emp; 注意点:关于COUNT

[数据库] Oracle单表查询总数及百分比和数据横向纵向连接

这是最近项目关于SQL语句的,本文简单记录并总结以下几个知识点: 1.如何统计一张表中某个字段的总数,如不同"专业"的学生数及所占百分比: 2.如何联系另一张表进行查询某个字段的总数及百分比: 3.简单介绍decode防止分母为0和trunc保留小数位数等函数: 4.通常复杂的SQL语句会涉及到查询结果横向连接和纵向连接,这里进行介绍. 最近买了本<Oracle查询优化改写技巧与案例·有教无类 落落>,推荐大家也阅读下.后面我也会补充一些相关数据的知识,希望对大家有所帮助吧