Oracle

86 阅读2分钟

1.1 创建一个持久表空间

 必须要在sys或者system用户下才能创建表 否则将会提示权限不够

1.2创建一个用户

QQ截图20221206221208.png

但是此时还不能用此用户登录 因为缺少权限

  • 对象权限(Object privileges)
  • 角色权限(Role privileges)
  • 系统权限(System privileges) 1.3 分配权限 分配连接权限:

QQ截图20221207142352.png

分配系统权限:创建表的权限 以及空间权限

QQ截图20221207142406.png

学习阶段如果觉得分配权限麻烦 可以直接在role privileges直接设置dba的权限

2.1 oracle数据类型

字符类型:

  1. CHAR:定长字符串 会用空格填充来达到最大长度 例如非NULL的CHAR(12)它始终会储存12个字节信息 单位:字节 一个字母或数字占1个字节 一个汉字占3个字节
  2. VARCHAR2:变长字符串 他不会用空格填充至最大长度 单位:字节 一个字母或数字占1个字节 一个汉字占3个字节
  3. NVARCHAR2:单位:字符 一个汉字、数字、字母均占一个字符

数字类型:

  1. NUMBER(P,S):P表示数字个数(包括整数位小数位) 最多有38位 S表示小数位个数
  2. INTEGER:是NUMBER的子类型 等同于NUMBER(38,0) 若插入小数会被四舍五入
  3. BINARY_FLOAT:32位 单精度
  4. BINARY_DOUBLE:64位 双精度

日期类型:

  1. DATE
  2. TIMESTAMP

LOB类型(large object):

  1. CLOB(Character large object):二进制数据 存储单字节和多字节字符数据 最大长度为4G
  2. BLOB(Binary large object):一般存储图像、音频、视频等文件 最大长度为4G
  3. NCLOB:存储Unicode类型数据 最大长度4G

LONG&RAW&LONG RAW类型:

1.LONG:存储字符串 最多达2G 2.LONG RAW:能存放2G 多媒体音频等 3.RAW:必须制定长度 多媒体音频等

3.1 约束类型

  1. 主键约束(Primary key constraint):唯一性 非空性
  2. 唯一约束(Unique constraint):唯一性 可以空但只能有一个
  3. 检查约束(Check constraint):对该列数据的范围、格式限制
  4. 非空约束(Not null constraint):not null
  5. 外键约束(Foreign key constraint):需要建立两表间的关系并引用主表的列

3.2 一对多关系

一对多关系 外键在多方

3.3一对一关系

只需要在一对多关系上添加唯一约束即是一对一关系 外键在哪一侧都可以

3.4多对多关系

需要创建一个中间表 中间表里建立两个列 然后需要用这两个列作为这个表的联合主键 然后每个列作为外键参照各自的表的主键

QQ截图20221208151215.png