数据字典的结构
包括:
– 基本表:描述数据库信息,只能由数据库服务器进行修改
– 用户表:用户自定义表
数据字典命名规则
前缀 |
说明 |
USER |
用户自己的 |
ALL |
用户可以访问到的 |
DBA |
管理员视图 |
V$ |
性能相关的数据 |
如何使用数据字典视图
从DICTIONARY开始,这个数据对象包含了数据字典的表名和说明
DESCRIBE DICTIONARY
SELECT*
FROM dictionary
WHERE table_name= ‘USER_OBJECTS‘;
USER_OBJECTS和ALL_OBJECTS
USER_OBJECTS:
?通过查询USER_OBJECTS可以确定当前用户所有创建的对象
?可以获得如下信息:
?Date created
?Date of last modification
?Status (valid or invalid)
USER_OBJECTS视图:
SELECTobject_name,object_type,created, status
FROM user_objects
ORDERBY object_type;
ALL_OBJECTS:
?可以通过查询ALL_OBJECTS来确定当前用户能访问的数据对象
表的信息
USER_TABLES 用户自己的表:
语句:
DESCRIBE user_tables
SELECTtable_name
FROM user_tables;
列的信息
lUSER_TAB_COLUMNS:
语句:
DESCRIBEuser_tab_columns
SELECT column_name,data_type,data_length,
data_precision,data_scale,nullable
FROM user_tab_columns
WHERE table_name= ‘EMPLOYEES‘;
约束
?USER_CONSTRAINTS:当前用户表上的约束
?USER_CONS_COLUMNS当前用户创建的列约束
语句:
DESCRIBE user_constraints
SELECT constraint_name,constraint_type,
search_condition,r_constraint_name,
delete_rule,status
FROM user_constraints
WHERE table_name= ‘EMPLOYEES‘;
- - - - -- - - - - - - - - - - -- - - - - -- - - - - -- - - - -- - - - -- - - - -- - - - - - - - -- --
DESCRIBE user_cons_columns
SELECT constraint_name,column_name
FROM user_cons_columns
WHERE table_name= ‘EMPLOYEES‘;
视图
DESCRIBE user_views
SELECTDISTINCT view_nameFROM user_views;
SELECT text FROM user_views
WHERE view_name= ‘EMP_DETAILS_VIEW‘;
序列
DESCRIBE user_sequences
?通过USER_SEQUENCES查询序列信息:
SELECT sequence_name,min_value,max_value,
increment_by,last_number
FROM user_sequences;
?LAST_NUMBER表示当没有使用NOCAHCE时,下一个可用的值
同义词
DESCRIBE user_synonyms
SELECT*
FROM user_synonyms;
给表添加注释
?使用COMMENT语句给表或者列,添加注释:
?语句:
COMMENTON TABLE employees
IS ‘Employee Information‘;
Commentcreated.
?注释相关的视图:
?ALL_COL_COMMENTS
?USER_COL_COMMENTS
?ALL_TAB_COMMENTS
?USER_TAB_COMMENTS
?查询表的注释
?select * from user_tab_commentswhere table_name=‘???‘;
总结
lDICTIONARY
lUSER_OBJECTS
lUSER_TABLES
lUSER_TAB_COLUMNS
lUSER_CONSTRAINTS
lUSER_CONS_COLUMNS
lUSER_VIEWS
lUSER_SEQUENCES
lUSER_TAB_SYNONYMS
l表的注释