完美Oracle数据库知识学习文档总汇

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

✧ORACLE

一.DDL(数据定义语言)

Oracle自动在语句执行前后都加上commit, 则DDL之前的没提交改变被隐式提交, 不能回滚.

数据类型

1.合法表示符(标示符)

1-30个字符,以字符(可以# $ _ )开始,数据库链接可以包含(@ , )两个特殊符号. 不能包含引号,不能是保留字.

特殊情况: 数据库名称最多8个字符, 数据库链接最多128个字符, 把列名放入引号可以使用保留字作为列名.

ORACLE数据库的端口默认是1521

2.NUMBER

Number(precision[,scale])

precision: 有效位数总数, 1---38 , 包括小数位

scale: 小数位数,没有小数可以省略小数和小数点; 省略此参数表示一个整数;当 scale> precision,则会在有效位之前加0

3.CHAR

char(size)

size: 1---2000字节, 值不足size时,会自动在值后面补充空格.

char(size [CHAR|BYTE]) 指出基于字符或字节,9i以上版本考虑数据库参数 NLS_LENGTH_SEMATICS

(show parameters nls_length_semantics 可以看当前设置).

4.NCHAR

与char差别在于它规定的是最大字符个数.支持Unicode可变长度的字符集. 最大也是2000字节容量.

5.VarChar2

与char差别仅仅是:不会自动在值后面补充空格.最大4000字节,默认基于字节.

6.NVarChar2

存储可变长度且基于字符数量的数据.

7.RAW

与VarChar2类似,用于可变长度的二进制数据,但最大只有2000字节.

8.LOB

大对象,包括BLOB(二进制字节) CLOB(字符) NCLOB(国家字符) BFILE(二进制文件), 最大可到4GB的数据. 支持分段访问, 支持Oracle对象, 还可以用PL/SQL 的DBMS_LOB包进行处理.

9.Date 精确到秒的时间. 通常被误认为只是到天. 9i之前唯

一存在的时间类型.

Date ‘yyyy-mm-dd’生成一个日期, date ‘2006-08-15’ . 这里没有小时,分,秒, 也必须yyyy-mm-dd的格式.

To_date(日期值, 格式串) 生成一个日期, 格式串: yyyy mm dd 分别表示年月日.

使用DD- MON-YYYY, MON-DD-YYYY YYYY-MON-DD-YYYY表示时都应该基于其安

装的系统, 中文Oracle需要使用’月’标识月字段.

show parameters nls_date_format(查看默认日期格式),

9i默认的格式: DD-Mon-RR

8.x: DD-Mon-RR

7.3及以下: DD-Mon-YY

如果在windows系统中设置了了注册表中的NLS_LANG, 则所有的NLS_*参数

都会被忽略. 这时或者根本没有设置nls_date_format参数, 使用不加格式串的

to_date函数就会失败.

--- insert into Test(event,"data")

--- values('Table Made',TO_DATE('Dec-2-2004','MON-DD-YYYY') ); //Dec无效 ! 中文Oracle需要使用’月’标识月字段.

insert into Test(event,"data")

values('Table Made',SYSDATE ) ; //SYSDATE生成系统日期

insert into test2(event,"Date")

values('Table Made',TO_DATE('01-12月-04','DD-MON-YY') ) ;

insert into test2(event,"Date")

values ('Insert first value', to_date('12月-21–2004 ', ' MON-DD - YYYY '));

insert into test2(event,"Date")

values ('Insert first value', to_date('2004-12月-31','YYYY-MON -DD') );

insert into test2(event,"Date")

values('Table Made',TO_DATE('01-12月-04','DD-MON-YYYY'));

insert into test2(event,"Date")

values('Table Made',TO_DATE('01-12月-03'))

// 日-月-年月-日-年年-月-日三种顺序有效 !!;

SQL> select to_char("Date",'DD-MON-YY HH12:MI:SS') "Date" from test2;

Date

-------------------

31-12月-04 03:52:39

31-12月-04 12:00:00

21-12月-04 12:00:00

10.TIMESTAMP 对秒提供最多9位小数精度的时间. 9i new!

相关文档
最新文档