- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章管理表-山西财贸职业技术学院
SQL Server 数据库技术;第3章 管理表;3.1 了解数据组织方式—关系模型 ;3.1.1 数据描述;3.1.2 数据模型 ; 例3-1。
在学校里的班主任和班级之间(约定一个教师只能担任一个班级的班主任),由于一个班主任至多带一个班级,而一个班级至多有一个班主任,因此班主任和班级之间是一对一联系。
在学校里的班主任和学生之间,由于一个班主任可以带多个学生,而一个学生至多有一个班主任,因此班主任和学生之间是一对多联系。
在学校里的教师和学生之间,由于一个教师可以带多个学生,而一个学生可以有多个教师,所以教师和学生之间是多对多联系。
;例3-2 为“学生选课系统”设计E-R模型。;例3-3 将例3-2E-R模型转换为关系模型。
转换的方法:
把E-R图中实体和M∶N的联系分别转换成关系模式,同时在实体标识符下加一横线表示模式的关键码。联系关系模式的属性为与之联系的实体类型的关键码和联系的属性,关键码为与之联系的实体类型的关键码的组合。
; 3.1.3 关系模型 ;3.2 实现数据组织方式 —建立表结构 ;1.设计数据库
为“学生选课系统”设计名为student的数据库,由一个主数据文件和 一个事务日志文件组成,并将其存放在“d:\example”下。
2.设计表
学生关系模式: s(sno,class,sname,sex,birthday,address,
telephone,email),主键sno
课程关系模式:c(cno,cname,credit),主键cno
选课关系模式:sc(sno,cno,score),主键sno、cno,外键sno、cno
;3.3.2 数据类型 ; 1.数值类型; 2.逻辑类型; 3.字符串类型 ; 4.二进制类型 ; 5.日期时间类型; 6.货币类型;3.2.3 创建表; 1. 使用SQL语句; ; ; 2. 使用SQL-EM; 例3-7 创建例3-4中的表SC。;3.2.4 修改表;
例3-8 在表s中增加新的列postcode。
脚本:ALTER TABLE s
ADD postcode char(6) NULL
例3-9 删除表s中的列postcode。
脚本:ALTER TABLE s
DROP COLUMN postcode;3.2.4 修改表;例3-12 对表s,定义sname非空完整性约束、sex缺省完整性约束(值“男”)、email惟一完整性约束。 ;例3-13 对表sc,定义sno为外键,参照表s的sno;定义cno为外键,参照表c的cno。 ;3.2.5 删除表;例3-14 删除student数据库中的表sc。
脚本:
DROP TABLE sc;3.3 管理数???—编辑数据 ;3.3.1 使用SQL-EM;3.3.2 使用SQL语句; 1. INSERT语句;例3-15 在表s中插入一条学生记录。
脚本:
insert into s
values(1001,信息501,黄鹏,男,1981-10-12,
江苏省常州市hp@163.net)
例3-16 在表s中插入另一条学生记录。
脚本:
insert into s(sno,class,sname,sex,birthday,email)
values(2001,计应501,张宇蛟,男,1984-11-6,
zyj@sohu.net);例3-17 将表s中的男生记录插入到表s_bak中。
假设表s_bak已存在且结构与表s相同。
脚本:
insert into s_bak
select * from s where sex=男; 2. DELETE语句;例3-18 删除表s_bak中所有男生。; 3. UPDATE语句; 例3-19 修改表s 中的学号为“2001”的学生记录。;例3-20 将所有选修数据库应用课程的学生的成绩加5分。;3.4 数据库原理(一) —数据库规范化设计 ;3.4.2 函数依赖 ; 例3-22 对实例3-21“学生选课”关系模式R,如果规定每名学生只能有一个姓名,每个课程号只能对应一门课程,则有以下FD:
sno→sname
cno→cname
由于每名学生每选修一门课程只能有一个成绩,则有以下FD:
(sno,cno)→score
当然,还有以下FD
文档评论(0)