萌新数据库学习后归纳 (欢迎大佬们指正)
1.字符型
类型名 | 声明格式 | 插入格式 | 最大长度 | 备注 |
---|---|---|---|---|
char | char(n) | 'char' | 2000 | 固定长度 |
varchar2 | varchar2(n) | 'varchar2' | 4000 | 可变长度 |
- n和最大长度以字节为单位。
- varchar和varchar2均表示可变长度的字符串,建议使用varchar2保证兼容性,二者区别:
a.字符长度处理:一般情况下varchar2把所有字符当作2字节处理1。varchar只将汉字和全角等字符处理为两字节。
b.空串处理:varchar2将空串等同于null,varchar仍按空串处理。
2.数字类型
类型名 | 声明格式 | 插入格式 | 数据范围 | 备注 |
---|---|---|---|---|
number | number(n) number(a,b) | 6 2.33 |
(
(
(-1e(n+1),1e(n+1)
)
)
) ( ( (-1e(a-b+1),1e(a-b+1) ) ) ) | 既可以表示整数 也可以表示固定格式的小数 |
Integer | interger | 6 | (-1e39,1e39) | number的子类 相当于number(38) |
- number(n)表示n位十进制的整数。例如n=5时number范围是(-99999,99999)。
- number(a,b)表示长度为a,含有b位有效数字的小数。例如a=5、b=3,number范围是(-99.999,99.999)。
3.时间类型
类型名 | 声明格式 | 插入格式 |
---|---|---|
date | date | to_date ( '2020-04-02 15:58:02' , 'yyyy-mm-dd hh24:mi:ss' ) |
- 插入当前时间使用
sysdate
- 插入格式其他表示法:
插入类型 | 格式 | 备注 |
---|---|---|
年 | YYY 、YY | 省略前1、2位,默认为当前年份的前置 |
月 | mon 、month | 中文下均为xx月,英文下分别为几月的简写及完整表示 例如nov、novmber |
日 | ddd 、dy 、day | ddd为当年第几天 dy、day中文下为星期几,英文下为星期几的简写及完整表示 |
时 | hh | 12小时进制 |
主要指GBK编码格式,在UTF-8格式下汉字一般占3字节,保险起见一般用 n / 3 n/3 n/3作为参考长度。 ↩︎