32数据定义 表32SQL的数据定义语句 操作对 操作方式 创建 除 象表 修改 CREATE DROP ALTER E TABL TABLE TABLE 视图 CREATE DROP VIEW VIEW 索引 CREATE DROP INDEX INDEX An Introduction to Database System
An Introduction to Database System 3.2 数 据 定 义 表 3.2 SQL 的数据定义语句 操 作 方 式 操 作 对 象 创 建 删 除 修 改 表 CREATE TABLE DROP TABLE ALTER TABLE 视 图 CREATE VIEW DROP VIEW 索 引 CREATE INDEX DROP INDEX
321定义语句格式 CREATE TABLE<表名> (<列名><数据类型冮[<列级完整性约束条件>] <列名><数据类型>[<列级完整性约束条件 [,<表级完整性约束条件>]) <表名>:所要定义的基本表的名字 <列名>:组成该表的各个属性(列) 药在整性约束条件x:涉及相应属性列的完整性 <表级完整性约束条件>:涉及一个或多个属性列的 完整性约束条件 An Introduction to Database System
An Introduction to Database System 3.2.1 定义语句格式 CREATE TABLE <表名> (<列名> <数据类型>[ <列级完整性约束条件> ] [,<列名> <数据类型>[ <列级完整性约束条件 >] ] … [,<表级完整性约束条件> ] ); ◼ <表名>:所要定义的基本表的名字 ◼ <列名>:组成该表的各个属性(列) ◼ <列级完整性约束条件>:涉及相应属性列的完整性 约束条件 ◼ <表级完整性约束条件>:涉及一个或多个属性列的 完整性约束条件
例题 [例1]建立一个“学生”表 Student,它由学号 Sno、姓名 Sname、性别Ssex、年龄Sage、所 在系 Sdept五个属性组成。其中学号不能为空, 值是唯一的,并且姓名取值也唯一。 CREATE TABLE Student (Sno CHAR(S NOT NULL UNIQUE, Sname CHAR(20 UNIQUE Ssex CHaR(1) Sage INT, Sdept CHAR(15)); An Introduction to Database System
An Introduction to Database System 例题 [例1] 建立一个“学生”表Student,它由学号 Sno、姓名Sname、性别Ssex、年龄Sage、所 在系Sdept五个属性组成。其中学号不能为空, 值是唯一的,并且姓名取值也唯一。 CREATE TABLE Student (Sno CHAR(5) NOT NULL UNIQUE, Sname CHAR(20) UNIQUE, Ssex CHAR(1) , Sage INT, Sdept CHAR(15));
定义基本表(续) 常用完整性约束 主码约束: PRIMARY KEY n唯一性约束: UNIQUE 非空值约束: NOT NULL ■参照完整性约束 PRIMARY KEY与 UNIQUE的区别? An Introduction to Database System
An Introduction to Database System 定义基本表(续) ◼ 常用完整性约束 ◼ 主码约束: PRIMARY KEY ◼ 唯一性约束:UNIQUE ◼ 非空值约束:NOT NULL ◼ 参照完整性约束 PRIMARY KEY与 UNIQUE的区别?
例题(续) [例2]建立一个“学生选课”表SC,它 由学号Sno、课程号Cno,修课成绩 Grade组成,其中(Sno,Cno)为主码。 CREATE TABLE SCO Sno CHAR(5) Cno CHAR 3) Grade int, Primary key(Sno, Cno)) An Introduction to Database System
An Introduction to Database System 例题 (续) ◼ [例2] 建立一个“学生选课”表SC,它 由学号Sno、课程号Cno,修课成绩 Grade组成,其中(Sno, Cno)为主码。 ◼ CREATE TABLE SC( ◼ Sno CHAR(5) , ◼ Cno CHAR(3) , ◼ Grade int, ◼ Primary key (Sno, Cno));