首页 > 数据库 > Oracle > 使用DDL语句创建和管理表(1)
目标:
1、了解数据库对象类型
2、了解表结构
3、了解每一列所能允许的数据类型
4、学会创建表
5、创建表的同时添加约束(constraint)条件
6、了解“schema”对象如何工作
Agenda
一、了解数据库对象
---命名规则
二、创建表
---如何访问其他用户的表
---DEFAULT(缺省值)
三、数据类型
四、了解约束条件“NOT NULL、PRIMARY KEY、FOREIGN KEY、CHECK”
五、掌握使用子查询创建表
六、ALTER TABLE(改变表)
七、DROP TABLE(删除表)
一、了解数据库对象

命名规则(表名和列名):
1、以字母开头
2、最大长度30个字符
3、只包含“A à Z、a à z、0 à 9、_、$、#”
4、同一个用户下所使用的对象名不应重复,类型不同,对象名可相同
5、不可以包含Oracle的保留关键字
二、创建表

注意:1、需要有创建表的权限
2、有一个存储空间
3、需要写明表名,列名,列数据类型和列大小
示例:
查看用户对象


创建一张表

再查看一下用户对象


访问其他用户的表
当创建了一个用户之后,这个用户就会拥有一个schema,schema可以理解为这个用户所拥有的对象的集合

示例:
先为之前创建的表增加一条记录

打开另一窗口,使用 “sysdba”用户登录,然后查询“HR”用户表X

如果用“scott”用户查询的话

说明“scott”用户没有这个权限
DEFAULT
1、插入值的时候指定一个列的缺省值
2、值、表达式或者SQL函数是合法值
3、其它列名或者伪名不是合法值
4、返回结果列数据类型必须匹配列数据类型
示例:
创建表

插入一条记录
显然,当不指定NAME和HIRE_DATE时,这两列按照缺省值插入
也可以指定为NULL值

三、数据类型

ROWID示例:

日期数据类型

四、了解约束条件“NOT NULL、UNIQUE(唯一)、PRIMARY KEY(主键)、FOREIGN KEY(外键)、CHECK”
1、在表级别添加规则
2、防止删除一个如果有依赖性的表
约束条件指导规则:
1、可以为约束命名,或者Oracle自动添加一个名字,格式:SYS_Cn
2、可以在创建表的时候可以把约束条件指定好
3、可以在改变表的时候可以把约束条件指定好
4、约束可以在列级别或者表级别定义
5、查看约束条件可以去数据字典
定义约束
语法:

列级别约束语法
表级别约束语法

示例1:列级别约束

插入一条记录

因为第一列是主键,当插入相同的数据时
即违反了约束
当主键中插入不同的数据时
显然是可以的
如何查看约束条件
示例:

查看详细信息

示例2:表级别约束


NOT NULL ---> 确保某一列是NOT NULL
UNIQUE ---> 确保某一列不会有重复值
示例:
显然,再次添加一样的JOB_ID数据是报错的
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30197839/viewspace-1977320/ ,如需转载,请注明出处,否则将追究法律责任。