db2对应oracle的user_col_comments,user_tab_columns和user_col_comments区别

本文详细介绍了Oracle数据库的各种管理操作,包括查询用户表、列信息、索引、回滚段、约束和作业等。通过示例查询语句,展示了如何获取表空间、数据库对象、表的列名和注释、索引、回滚段的状态以及如何创建和删除作业。此外,还涵盖了回滚段的管理、约束的定义以及如何分析表的统计信息。
摘要由CSDN通过智能技术生成

SELECT USER_TAB_COLUMNS.COLUMN_NAME,

USER_COL_COMMENTS.COMMENTS,

CASE

WHEN INSTR(USER_TAB_COLUMNS.DATA_TYPE, 'DATE') <> 0 THEN

'3'

WHEN INSTR(USER_TAB_COLUMNS.DATA_TYPE, 'NUM') <> 0 THEN

'2'

ELSE

'1'

END DATATYPE,

CASE

WHEN INSTR(DATA_TYPE, 'DATE') <> 0 THEN

'YYYY/MM/DD'

ELSE

''

END DEFFORMAT,

ROWNUM,

NULLABLE

FROM USER_TAB_COLUMNS,

USER_COL_COMMENTS

WHERE USER_TAB_COLUMNS.TABLE_NAME = UPPER('ResReinsData')

AND USER_TAB_COLUMNS.TABLE_NAME = USER_COL_COMMENTS.TABLE_NAME

AND USER_TAB_COLUMNS.COLUMN_NAME = USER_COL_COMMENTS.COLUMN_NAME

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 –查询所有用户的表的列名等信息(详细但是没有备注).

select * from user_tab_columns –查询本用户的表的列名等信息(详细但是没有备注).

–一般使用1:

select t.table_name,t.comments from user_tab_comments t

–一般使用2:

select r1, r2, r3, r5

from (select a.table_name r1, a.column_name r2, a.comments r3

from user_col_comments a),

(select t.table_name r4, t.comments r5 from user_tab_comments t)

where r4 = r1

oracle 系统表 查询

1、用户:

select username from dba_users;

改口令

alter user spgroup identified by spgtest;

2、表空间:

select * from dba_data_files;

select * from dba_tablespaces;//表空间

select tablespace_name,sum(bytes), sum(blocks)

from dba_free_space group by tablespace_name;//空闲表空间

select * from dba_data_files

where tablespace_name=’RBS’;//表空间对应的数据文件

select * from dba_segments

where tablespace_name=’INDEXS’;

3、数据库对象:

select * from dba_objects;

CLUSTER、DATABASE LINK、FUNCTION、INDEX、LIBRARY、PACKAGE、PACKAGE BODY、

PROCEDURE、SEQUENCE、SYNONYM、TABLE、TRIGGER、TYPE、UNDEFINED、VIEW。

4、表:

select * from dba_tables;

analyze my_table compute statistics;->dba_tables后6列

select extent_id,bytes from dba_extents

where segment_name=’CUSTOMERS’ and segment_type=’TABLE’

order by extent_id;//表使用的extent的信息。segment_type=’ROLLBACK’查看回滚段的空间分配信息

列信息:

select distinct table_name

from user_tab_columns

where column_name=’SO_TYPE_ID’;

5、索引:

select * from dba_indexes;//索引,包括主键索引

select * from dba_ind_columns;//索引列

select i.index_name,i.uniqueness,c.column_name

from user_indexes i,user_ind_columns c

where i.index_name=c.index_name

and i.table_name =’ACC_NBR’;//联接使用

6、序列:

select * from dba_sequences;

7、视图:

select * from dba_views;

select * from all_views;

text 可用于查询视图生成的脚本

8、聚簇:

select * from dba_clusters;

9、快照:

select * from dba_snapshots;

快照、分区应存在相应的表空间。

10、同义词:

select * from dba_synonyms

where table_owner=’SPGROUP’;

//if owner is PUBLIC,then the synonyms is a public synonym.

if owner is one of users,then the synonyms is a private synonym.

11、数据库链:

select * from dba_db_links;

在spbase下建数据库链

create database link dbl_spnew

connect to spnew identified by spnew using ‘jhhx’;

insert into acc_nbr@dbl_spnew

select * from acc_nbr where nxx_nbr=’237’ and line_nbr=’8888’;

12、触发器:

select * from dba_trigers;

存储过程,函数从dba_objects查找。

其文本:select text from user_source where name=’BOOK_SP_EXAMPLE’;

建立出错:select * from user_errors;

oracle总是将存储过程,函数等软件放在SYSTEM表空间。

13、约束:

(1)约束是和表关联的,可在create table或alter table table_name add/drop/modify来建立、修改、删除约束。

可以临时禁止约束,如:

alter table book_example

disable constraint book_example_1;

alter table book_example

enable constraint book_example_1;

(2)主键和外键被称为表约束,而not null和unique之类的约束被称为列约束。通常将主键和外键作为单独的命名约束放在字段列表下面,而列约束可放在列定义的同一行,这样更具有可读性。

(3)列约束可从表定义看出,即describe;表约束即主键和外键,可从dba_constraints和dba_cons_columns 查。

select * from user_constraints

where table_name=’BOOK_EXAMPLE’;

select owner,CONSTRAINT_NAME,TABLE_NAME

from user_constraints

where constraint_type=’R’

order by table_name;

(4)定义约束可以无名(系统自动生成约束名)和自己定义约束名(特别是主键、外键)

如:create table book_example

(identifier number not null);

create table book_example

(identifier number constranit book_example_1 not null);

14、回滚段:

在所有的修改结果存入磁盘前,回滚段中保持恢复该事务所需的全部信息,必须以数据库发生的事务来相应确定其大小(DML语句才可回滚,create,drop,truncate等DDL不能回滚)。

回滚段数量=并发事务/4,但不能超过50;使每个回滚段大小足够处理一个完整的事务;

create rollback segment r05

tablespace rbs;

create rollback segment rbs_cvt

tablespace rbs

storage(initial 1M next 500k);

使回滚段在线

alter rollback segment r04 online;

用dba_extents,v$rollback_segs监测回滚段的大小和动态增长。

回滚段的区间信息

select * from dba_extents where segment_type=’ROLLBACK’ and segment_name=’RB1’;

回滚段的段信息,其中bytes显示目前回滚段的字节数

select * from dba_segments

where segment_type=’ROLLBACK’ and segment_name=’RB1’;

为事物指定回归段

set transaction use rollback segment rbs_cvt

针对bytes可以使用回滚段回缩。

alter rollback segment rbs_cvt shrink;

select bytes,extents,max_extents from dba_segments

where segment_type=’ROLLBACK’ and segment_name=’RBS_CVT’;

回滚段的当前状态信息:

select * from dba_rollback_segs

where segment_name=’RB1’;

比多回滚段状态status,回滚段所属实例instance_num

查优化值optimal

select n.name,s.optsize

from vrollnamen,vrollstat s

where n.usn=s.usn;

回滚段中的数据

set transaction use rollback segment rb1;/回滚段名/

select n.name,s.writes

from vrollnamen,vrollstat s

where n.usn=s.usn;

当事务处理完毕,再次查询$rollstat,比较writes(回滚段条目字节数)差值,可确定事务的大小。

查询回滚段中的事务

column rr heading ‘RB Segment’ format a18 column us heading ‘Username’ format a15 column os heading ‘Os User’ format a10 column te heading ‘Terminal’ format a10 select r.name rr,nvl(s.username,’no transaction’) us,s.osuser os,s.terminal te from vlockl,vsession s,v$rollname r where l.sid=s.sid(+) and trunc(l.id1/65536)=R.USN and l.type=’TX’ and l.lmode=6 order by r.name;

15、作业   查询作业信息    select job,broken,next_date,interval,what from user_jobs;    select job,broken,next_date,interval,what from dba_jobs;   查询正在运行的作业    select * from dba_jobs_running;   使用包exec dbms_job.submit(:v_num,’a;’,sysdate,’sysdate + (10/(24*60*60))’)加入作业。间隔10秒钟 exec dbms_job.submit(:v_num,’a;’,sysdate,’sysdate + (11/(24*60))’)加入作业。间隔11分钟使用包exec dbms_job.remove(21)删除21号作业。

### 回答1: `user_ind_columns` 和 `user_index` 是 Oracle 数据库中的两个系统视图,它们描述了用户创建的索引信息。 `user_ind_columns` 视图中的信息包括:索引的列名、列的顺序、列的列数等。 `user_indexes` 视图中的信息包括:索引的名称、表名、是否唯一索引、索引的列数等。 这两个视图可以用来查询和管理用户创建的索引信息。 ### 回答2: 在Oracle数据库中,user_ind_columns和user_index是与数据库索引相关的两个数据字典视图。 user_ind_columns视图保存了当前用户(即当前登录用户)拥有的所有索引的列信息。它包含了所有索引列的相关细节,如索引列的名称、索引所属的表格名称、索引的顺序以及排序方式等。通过查询user_ind_columns视图,用户可以了解当前用户所拥有的索引列的详细信息。 user_index视图则保存了当前用户拥有的所有索引的一般信息,而不仅仅是索引列的信息。它包含了索引的名称、所属的表格名称、索引类型、是否唯一索引等信息。通过查询user_index视图,用户可以获取到索引的基本信息,包括索引的名称和所属的表格名称,以及索引的类型。 通过使用这两个视图,用户可以对数据库中的索引进行更精细的查询和分析。用户可以了解到当前用户拥有的所有索引的具体细节和基本信息,以方便进行索引的管理和优化。 ### 回答3: 在 Oracle 数据库中,user_ind_columns 和 user_indexes 是两个系统视图,用于查看和管理索引相关的信息。 user_ind_columns 视图包含了当前用户自己的表上索引的列级别的信息。通过查询该视图,可以获得表的索引信息,包括索引所在的表、索引的名称、索引的列名、列的位置、列的排序顺序等。这些信息可以帮助用户了解和管理表上的索引。 user_indexes 视图包含了当前用户自己的表上索引的索引级别的信息。通过查询该视图,可以获得表的索引信息,包括索引的名称、索引所在的表、索引所包含的列、索引的类型、索引是否为唯一索引、索引的状态等。这些信息可以帮助用户了解和管理表上的索引,对索引的性能进行调优。 user_ind_columns 和 user_indexes 视图是 Oracle 数据库提供的系统视图,可以通过查询这两个视图来获取有关索引的各种信息。根据这些信息,用户可以更好地了解和管理索引,优化查询和读取性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值