1.1 创建一个持久表空间
必须要在sys或者system用户下才能创建表 否则将会提示权限不够
1.2创建一个用户
但是此时还不能用此用户登录 因为缺少权限
- 对象权限(Object privileges)
- 角色权限(Role privileges)
- 系统权限(System privileges) 1.3 分配权限 分配连接权限:
分配系统权限:创建表的权限 以及空间权限
学习阶段如果觉得分配权限麻烦 可以直接在role privileges直接设置dba的权限
2.1 oracle数据类型
字符类型:
- CHAR:定长字符串 会用空格填充来达到最大长度 例如非NULL的CHAR(12)它始终会储存12个字节信息 单位:字节 一个字母或数字占1个字节 一个汉字占3个字节
- VARCHAR2:变长字符串 他不会用空格填充至最大长度 单位:字节 一个字母或数字占1个字节 一个汉字占3个字节
- NVARCHAR2:单位:字符 一个汉字、数字、字母均占一个字符
数字类型:
- NUMBER(P,S):P表示数字个数(包括整数位小数位) 最多有38位 S表示小数位个数
- INTEGER:是NUMBER的子类型 等同于NUMBER(38,0) 若插入小数会被四舍五入
- BINARY_FLOAT:32位 单精度
- BINARY_DOUBLE:64位 双精度
日期类型:
- DATE
- TIMESTAMP
LOB类型(large object):
- CLOB(Character large object):二进制数据 存储单字节和多字节字符数据 最大长度为4G
- BLOB(Binary large object):一般存储图像、音频、视频等文件 最大长度为4G
- NCLOB:存储Unicode类型数据 最大长度4G
LONG&RAW&LONG RAW类型:
1.LONG:存储字符串 最多达2G 2.LONG RAW:能存放2G 多媒体音频等 3.RAW:必须制定长度 多媒体音频等
3.1 约束类型
- 主键约束(Primary key constraint):唯一性 非空性
- 唯一约束(Unique constraint):唯一性 可以空但只能有一个
- 检查约束(Check constraint):对该列数据的范围、格式限制
- 非空约束(Not null constraint):not null
- 外键约束(Foreign key constraint):需要建立两表间的关系并引用主表的列
3.2 一对多关系
一对多关系 外键在多方
3.3一对一关系
只需要在一对多关系上添加唯一约束即是一对一关系 外键在哪一侧都可以
3.4多对多关系
需要创建一个中间表 中间表里建立两个列 然后需要用这两个列作为这个表的联合主键 然后每个列作为外键参照各自的表的主键