当前位置:文档之家› 数据库原理及应用

数据库原理及应用

整性约束条件 <表级完整性约束条件>:涉及一个或多个属性
列的完整性约束条件 注意:SQL语句的结束符为分号
2020/10/15
定义基本表
▪ [例1] 建立一个“员工”表Staff,它由工号号Sno、姓名 Sname、性别Ssex、年龄Sage、所在部门Sdept五个属 性组成。其中工号不能为空,值是唯一的,并且姓名取 值也唯一。
2020/10/15
SQL Server常用数据类型
▪ binary 定长二进制数型 ▪ char 定长字符串型 ▪ datetime 日期时间型 ▪ int 全字长整数型 ▪ decimal 小数型 ▪ float 浮点型 ▪ money 货币型
2020/10/15
定义基本表
▪ 常用完整性约束
CREATE TABLE Staff (Sno CHAR(5) NOT NULL UNIQUE, Sname CHAR(20) UNIQUE, Ssex CHAR(2), Sage INT, Sdept CHAR(15));
2020/10/15
SQL Server主要支持的数据类型
▪ 二进制数据 ▪ 字符数据 ▪ Unicode数据 ▪ 日期和时间数据 ▪ 数字数据 ▪ 货币数据 ▪ 特殊数据
注:修改原有的列定义有可能会破坏已有的数据。 SQL Server中用ALTER COLUMN 替代MODIFY。
2020/10/15
修改基本表
▪ [例4] 删除员工姓名必须取唯一值的约束。
ALTER TABLE Staff DROP UNIQUE(Sname);
SQl Server中直接删除约束的名称。如果建立约束 时没有命名,则系统自动生成约束名。
索 引 CREATEINDEX DROPINDEX
2020/10/15
1、定义基本表
CREATE TABLE <表名> (<列名> <数据类型>[ <列级完整性约束条件> ] [,<列名> <数据类型>[ <列级完整性约束条件>] ] … [,<表级完整性约束条件> ] );
<表名>:所要定义的基本表的名称 <列名>:组成该表的各个属性(列)名称 <列级完整性约束条件>:涉及相应属性列的完
供应商
Supplyer
Char(20)
5
剩余总量 Sumremain Int
2020/10/15
数据更新
1、 插入数据 2、 删除数据 3、 修改数据
2020/10/15
1、插入数据
▪ 两种插入数据方式
插入单个元组 插入子查询结果
2020/10/15
(1)插入单个元组
▪ 语句格式
INSERT INTO <表名> [(<属性列1>[,<属性列2 >…)] VALUES (<常量1> [,<常量2>] …)
数据库原理与应用
小组汇报
▪ 各小组汇报基于SQL server建立的基本表, 需要注意的地方有哪几点
2020/10/15
数据定义
表3.2 SQL的数据定义语句
操作对象
操作方式
创建
删除
修改Leabharlann 表 CREATETABLE DROPTABLE ALTERTABLE
视 图 CREATEVIEW DROPVIEW
7
商品价格 Goodspric Money
e
2020/10/15
▪ 3.库存信息表
编号 数据项
数据项别名 数据类型 数据项含义
1
商品编号 Goodsno
char(10) 唯一标识,
外码
2
商品名称 Goodsname char(20)
唯一标识,
外码
3
商品规格 Goodsscale Char(10)
4
主码约束: PRIMARY KEY 唯一性约束:UNIQUE 非空值约束:NOT NULL 参照完整性约束:FOREIGN KEY
2020/10/15
2、修改基本表
ALTER TABLE <表名> [ ADD <新列名> <数据类型> [ 完整性约束 ] ] [ DROP <完整性约束名> ] [ MODIFY <列名> <数据类型> ];
ard
2020/10/15
▪ 2.商品信息表 编号
数据项
数据项字 段名
数据类型
数据项含 义
1
商品编号 Goodsno char(10) 唯一标识
2
商品名称 Goodsname char(20)
3
商品规格 Goodscale char(10)
5
供应商
Supplyer char(20)
6
库存量
Sum
int
2020/10/15
▪ 1.员工信息表
1
员工编号 Stuffno
char(10) 唯一标识
2
员工姓名 Stuffname char(20)
3
性别
Stuffsex char(5)
4
联系方式 Stufftelph char(20)
one
5
所在部门 Stuffappar char(20)
ment
6
密码
Stuffpassw char(20)
不论基本表中原来是否已有数据,新增加的 列一律为空值。
SQL Server中只有日期时间类型(datetime或 smalldatetime)
2020/10/15
修改基本表
▪ [例3] 将年龄的数据类型改为半字长整数。 ALTER TABLE Staff
MODIFY Sage SMALLINT;
<表名>:要修改的基本表 ADD子句:增加新列和新的完整性约束条件 DROP子句:删除指定的完整性约束条件 MODIFY子句:用于修改列名和数据类型
2020/10/15
修改基本表
▪ [例2] 向Staff表增加“入职时间”列,其 数据类型为日期型。
ALTER TABLE Staff ADD Scome DATE;
▪ 功能
将新元组插入指定表中。
2020/10/15
插入单个元组
▪ INTO子句
指定要插入数据的表名及属性列 属性列的顺序可与表定义中的顺序不一致 没有指定属性列:表示要插入的是一条完整的
2020/10/15
3、删除基本表
▪ DROP TABLE <表名>; ▪ [例5] 删除Staff表
DROP TABLE Staff;
基本表定义一旦删除,表中的数据、此 表上建立的索引和视图都将自动被删除。 因此执行删除基本表操作一定要小心。
2020/10/15
课堂练习
▪ 1.小组合作,分别创建一下三个基本表 a. 员工信息表 b. 商品信息表 c. 库存信息表
相关主题