第10章 使用DDL语句创建和管理表 数据库对象: 1、 表table 2、 视图view 3、 序列sequence 4、 索引index 5、 同义词synonym
表名和列名的命名规则: 1、 必须以字母开头; 2、 长度是1---30个字符; 3、 只能包含A-Z,a-z,0-9,_,$,#; 4、 不能和本用户下的其它对象重名; 5、 不能使Oracle数据库的保留关键字;
创建表:create table 用户必须具有以下权限: 1、 create table 2、 拥有存储权限 语法:
CREATE TABLE [schema.]table
(column datatype [DEFAULT expr][, ...]);
引用另一个用户下的表: Select * from schema.
1、 在本用户方案中没有其它用户创建的表; 2、 应该使用表所有者的名称作为前缀来查询;
Default选项: 指定表中列的默认值;
1、 文字、表达式、函数都是合法的; 2、 其它列名或伪列是非法的;
3、 默认值的数据类型必须和列的定义一致;
Desc
字段的数据类型: Varchar2(size) Char(size) Number(p,s) date long---2G
clob—4G
raw、long raw----二进制的数据,2G blob----二进制数据4G
bfile----存储外部文件中的二进制数据
rowed---表中行数据唯一的物理地址,16进制编码
日期时间数据类型: timestamp
interval year to month interval day to second
约束条件: 常见的约束类型: Not null unique primary key foreign key check 注:
1、 约束可以手工命名,也可以由oracle自动命名,自动命名的格
式SYS_Cnnnnnn
2、 约束可以在创建表时或创建表后去定义
3、 如果约束在创建表时定义,那么可以在列级别或表级别去定义 4、 约束定义以后,我们可以在数据库数据字典中查询约束
定义约束语法:
CREATE TABLE [schema.]table (column datatype [DEFAULT expr] [column_constraint],----------列级别定义 ...
[table_constraint][,...]);---------------表级别定义
Not null约束:确保列不为空值。
Unique约束:唯一键,确保列值不重复
Primary key约束:主键,确保主键值唯一、且不为空
Foreign key约束:外键,键值是引用的另一个表的主键值
ON DELETE CASCADE:删除父表中的行时还删除 子表中的相关行
相关推荐: