1Z0-051-DDL-主要数据库对象和数据类型
1、SQL经常使用到的对象包括:表、视图、同义词、索引和视图
表(table)以行和列形式存储数据。
视图(view)是存储的SELECT语句,可以像表一样引用它。
同义词(synonym)是表(或视图)的别名。
索引(index)提供一个指向表中某行的确切位置的指针,可以减少对表中行的访问次数。
序列(sequence)是一种生成唯一数字的结构。
2、模式对象命名规则
(1)不能超过30个字符。字符可以是字母、数字、下划线、美元符和井字符号。(database link 可以为128个字符长)
(2)必须以A~Z的字母开头,且小写字母将自动转换成大写字母。
(3)保留字不能作为对象的名称。
(4)将名称括在""(双引号)内,所有以上规则(除了长度外)都可以被打破。
SQL> show user
USER is"PEENBOO"
SQL> create tablelower(c1 date);
Table created.
SQL> create table"lower" (col1 varchar2(4));
Table created.
SQL> selecttable_name from user_tables where lower(table_name) = 'lower';
TABLE_NAME
------------------------------
lower
LOWER
3、对象名称空间
共享相同名称空间的对象
表
视图
序列
私有同义词
独立的过程
独立的存储过程
程序包
物化视图
用户定义类型
拥有自己名称空间的对象类型
索引
约束
集群
数据库触发器
私有数据库链接
维度
注:在同一个模式中,表、同义词和视图不能同名。
DDL_P1:确定会话可以访问那些对象
SQL> set pagesize50
SQL> set linesize200
SQL> selectobject_type,count(object_type) from dba_objects
2group by object_type order by object_type;
OBJECT_TYPE COUNT(OBJECT_TYPE)
-------------------------------------
CLUSTER 10
CONSUMER GROUP 25
CONTEXT 7
DESTINATION 2
DIRECTORY 4
EDITION 1
EVALUATIONCONTEXT 12
FUNCTION 309
INDEX 4895
INDEX PARTITION 118
INDEXTYPE 9
JAVA CLASS 28968
JAVA DATA 309
JAVA RESOURCE 940
JAVA SOURCE 2
JOB 14
JOB CLASS 14
LIBRARY 193
LOB 1012
LOB PARTITION 1
MATERIALIZEDVIEW 1
OPERATOR 55
PACKAGE 1333
PACKAGE BODY 1272
PROCEDURE 171
PROGRAM 19
QUEUE 35
RESOURCE PLAN 10
RULE 1
RULE SET 19
SCHEDULE 3
SCHEDULER GROUP 4
SEQUENCE 223
SYNONYM 33977
TABLE 2885
TABLE PARTITION 97
TABLESUBPARTITION 32
TRIGGER 626
TYPE 2909
TYPE BODY 243
UNDEFINED 11
VIEW 5206
WINDOW 9
XML SCHEMA 53
44 rows selected.
SQL> selectobject_type,count(*) from user_objects group by object_type;
no rows selected
SQL> selectobject_type, count(*) from all_objects group by object_type;
OBJECT_TYPE COUNT(*)
-----------------------------
EDITION 1
CONSUMER GROUP 2
SEQUENCE 13
SCHEDULE 3
PROCEDURE 38
OPERATOR 55
DESTINATION 2
WINDOW 9
SCHEDULER GROUP 4
PACKAGE 401
PROGRAM 11
JAVA RESOURCE 938
XML SCHEMA 53
JOB CLASS 2
TABLE 122
SYNONYM 33888
VIEW 1936
FUNCTION 211
JAVA CLASS 28851
INDEXTYPE 9
TYPE 1543
EVALUATIONCONTEXT 1
22 rows selected.
SQL> selectdistinct owner from all_objects;
OWNER
------------------------------
MDSYS
PUBLIC
CTXSYS
OLAPSYS
SYSTEM
EXFSYS
APEX_030200
ORDSYS
ORDPLUGINS
DBSNMP
XDB
ORDDATA
SYS
WMSYS
14 rows selected.
4、数据类型
4.1适用于字母数字数据
数据类型
含义
大小
VARCHAR2
可变长度字符数据
1B到4KB
NVARCHAR2
可变长度字符数据(保存国家语言字符集中(Unicode字符集之一))
1B到4KB
CHAR
固定长度字符数据
1B到2KB
4.2 适用数字数据
数据类型
含义
大小
NUMBER
可以指定精度和小数位
精度1~38,小数-84~127
FLOAT
浮点数
精度126位二进制,38位十进制
INTEGER
整数型
相对于NUMBER 小数位为零
4.3 日期和时间类型
数据类型
含义
大小(备注)
DATE
包含世纪年月日时分秒
长度为0 or 7个字节
TIMESTAMP
与date类似,但是对秒而言,其精度为9位,默认为6位
长度为0 or 11个字节
TIMESTAMP WITH TIMEZONE
与TIMESTAMP一样,但指定时区
长度能达到13个字节
TIMESTAMP WITH LOCAL TIMEZONE
与TIMESTAMP一样,保存被规范为数据库时区
INTERVAL YEAR TO MONTH
记录两个TIMESTAMP或者DATE间的时间间隔
以年和月为单位
INTERVAL DAY TO SECOND
记录两个TIMESTAMP或者DATE间的时间间隔
以天和秒为单位
4.4 大对象数据类型
数据类型
含义
大小
CLOB
大小没有限制
4GB*block数
NCLOB
与CLOB一样,保存国家字符集中(Unicode字符集之一)
4GB*block数
BFILE
定位器,指向DB所在OS文件
4GB
LONG
DB中字符集的字符数据
2GB
LONG RAW
和LONG一样(oracle Net不会转二进制,都应该转BLOB)
2GB
BLOB
和CLOB一样,但Oracle Net不能执行字符集转换
4GB*block数
4.5 RAW和ROWINSs数据类型
数据类型
含义
大小(备注)
RAW
可变长度二进制数据
1B到4KB
ROWID
64为基数编码值,它是一个指向表中行的位置指针
里面是物理地址
注:1个汉字字符存储需要2个字节,1个英文字符存储需要1个字节
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。