数据库实验——索引

索引

实验目的:

了解建立索引的目的,掌握建立索引与删除索引, 掌握创建、修改、删除约束。

实验步骤:

1、用create index在学生表Student的学号Sno上建立聚簇索引:

CREATE CLUSTER INDEX Stusno ON Student(Sno);

2、在学生表student中,为姓名Sname建立非聚簇索引:

CREATE INDEX Stusna ON Student(Sname);

3、在课程表的课程号Cno上建立唯一索引:

CREATE UNIQUE INDEX Cno_INDEX ON Course(Cno);

4、在选课表的学号Sno、成绩Grade上建立复合索引,要求学号为升序,学号相同时成绩为降序:

CREATE INDEX idx_sc_no_grade ON SC(Sno ASC,Grade DESC);

5、用drop删除学生表Student的索引:

ALTER TABLE student DROP INDEX idx_sname;

6、增加学生表Student中姓名唯一约束:

ALTER TABLE Student ADD UNIQUE(Sname);

7、增加学生表Student中性别‘男’、‘女’唯一约束:

ALTER TABLE student ADD CONSTRAINT gender_chk CHECK (Ssex IN('男','女'));

8、增加学生表Student中年龄18~25岁约束:

ALTER TABLE student ADD CONSTRAINT chk_age CHECK (Sage >= 18 AND Sage <= 25);

9、增加选课表SC中学号Sno的外码约束:

ALTER TABLE SC ADD FOREIGN KEY(Sno) REFERENCES Student(Sno);

  • 11
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
高校成绩管理数据库系统的设计与实现 ——2008年国际学院计算机专业"数据库技术课程设计"指南 1. 基本目的 以SQL SERVER数据库管理系统为平台,通过设计数据库概念模型、逻辑模型以及利用标准SQL语 言的数据库实现,掌握关系数据库系统的设计与实现方法,增强数据库设计和数据库应 用系统开发能力。 2. 用户需求 某校管理学生成绩的工作人员,根据实际工作需要,提出了以下数据和业务处理需求 : 1、学校设置了各专业,在专业下开设班级,每个班级包含若干学生学生信息至少 需要包含学号、姓名、性别、年龄、生源所在地、已修学分总数等数据项;另外,需要 有地区信息,用于统计某一地区的学生数; 2、课程信息至少需包含课程编号、课程名称、任课教师、开课学期、学时、考试 或考查、学分等数据项,课程根据班级开设。 3、教师信息至少需要包含教师编号、姓名、性别、年龄、职称、联系电话等数据项 ; 4、学生成绩至少需要学号,学期,课程名称,成绩,任课老师等数据项; 5、需要实现以下业务处理和查询功能 学生成绩按每学年成绩统计 学生成绩名次排定 每门课程平均成绩统计 学生所学课程及学分统计 对每个学生输入成绩的时候,自动生成学生的已修学分总数 学生成绩查询 教师任课查询 班级课程开设查询 补充说明: 假设学籍管理制度是采用学年制,且暂不考虑选修课情况。 同一专业可能有多个班,所以同一门课可能需要多个教师上课,一个教师在一学 期可能上多门课程。 考试和考查课均采用百分制记分。 3. 大型实验具体要求 1. 根据以上用户需求对数据对象进行分析、抽象、建立数据库概念模型,用E- R图示,需要包括实体型,属性以及实体之间的联系和属性; 2. 建立数据库逻辑模型,用关系模式示; 3. 写出数据库逻辑模型对应的SQL语句,并考虑属性列的非空、主键、约束机制等,用 于创建数据库模式;此外,还要建立适当的索引; 4. 适当进行数据库的物理结构设计,比如索引等,并用有SQL语句示; 5. 完成用户需求所提出的数据查询或统计要求; 在设计过程要充分利用视图、触发器、存储过程等关系数据库提供的功能,要 求至少创建一个视图、一个触发器、一个存储过程; 6. 采用VC++或Java/JSP 或其它开发工具实现一个B/S或C/S结构的成绩管理系统,系统需要有数据录入功 能、信息检索功能和统计功能等; 7. 设计该数据库的数据备份及数据恢复策略。 8. 写出数据库设计遇到的问题及体会。 注意事项: 每个同学建立各自的数据库数据库名统一命名为DX,X为各自班级和姓的全 拼。比如,对于01班的黄德才(huang de cai)同学,其数据库名为D01huangdecai; 为便于检查,每个名及属性名统一用"汉字+姓名的第1个拼音字母示,要 求直观、简洁。比如,对于黄德才(huang de cai)同学建立学生,其名称为"学生hdc",该的属性命名为"学号hdc"," 姓名hdc"等; 要求考虑并建立数据的完整性约束机制。 要求考虑并建立用户视图。 各的数据输入方式不作特别要求,但关于数据的插入、修改和删除等命令需 具体执行一次,并分别将运行窗口剪贴到实验报告,开发的应用系统主要运 行窗口也要剪贴到实验报告。 需求提出的查询或统计结果,请将其对应窗口剪贴到实验报告,以验证查 询语句与查询结果的对应性。 对于个别查询建议用数据存储过程处理。 4. 日程安排 第19周星期1-5 5. 大型实验报告要求 报告分成如下几部分 1、需求分析 2、概念结构设计 3、逻辑结构设计 4、物理结构设计 5、数据库实施 完成以上每步的操作方法或命令,必须写入实验报告。 成功完成以上每一步实验的结果或信息输出窗口,也要复制粘贴到实 验报告。 6、应用系统开发与试运行—运行窗口复制粘贴到实验报告 7、实验遇到的问题,解决的办法和体会。 注意:实验报告使用word 2000/2003编辑的电子版,并用"班级-汉字姓名- 大型实验"作为文件名,比如"0501-黄德才- 大型实验",开发的应用系统放在"班级-汉字姓名-应用系统"目录,比如"0501- 黄德才-应用系统"目录,实验报告和打包的应用系统通过数据库课程网站提交。 ----------------------- 高校成绩管理数据库系统的设计与实现全文共2页,当前为第1页。 高校成绩管理数据库系统的设计与实现全文共2页,当前为第2页。
数据库原理及应用》课程设计指导书 2008 级计算机科学与技术专业 第 1 页 共 20 页 计算机科学与技术专业 数据库原理及应用 课 程 设 计 教学实验指导书 《数据库原理及应用》课程设计指导书 2008 级计算机科学与技术专业 第 2 页 共 20 页 《数据库原理及应用》课程设计教学指导 一.设计目的及要求 本课程是为了配合数据库原理及应用课程开设的,是将数据库理论知识转化为实践能力 的重要环节。其主要目的是:通过设计操作,加深对数据库系统理论知识的理解;通过使用 具体的 DBMS,了解一种实际的数据库管理系统并掌握其操作技术。重点掌握如下环节—— 概念结构设计与逻辑结构设计;熟练的使用 SQL 语言实现数据库建立、应用和维护。 要求如下 1.要充分认识课程设计对培养自己的重要性,认真做好设计前的各项准备工作。 2.既要虚心接受老师的指导,又要充分发挥主观能动性。结合课题,独立思考,努力钻 研,勤于实践,勇于创新。 3.独立按时完成规定的工作任务,不得弄虚作假,不准抄袭他人内容,否则成绩以不及 格计。 4. 学生如有事不能上课要履行正常的请假手续, 并且请假时间原则上不允许超过课程设 计时间的三分之一。课程设计期间,无故缺席按旷课处理;缺席时间达四分之一以上者(按 照缺勤次数/考核次数比值计算) ,其成绩按不及格处理。 5.在设计过程,要严格要求自己,树立严肃、严密、严谨的科学态度,必须按时、按 质、按量完成课程设计。 二.适用专业 适用计算机科学与技术专业。 三.课程设计的一般步骤 本课程设计分五个阶段: 1)选题与搜集资料:选择课程设计题目,进行系统调查,搜集资料。 2)分析与设计:根据搜集的资料,进行功能与数据分析,并进行数据库、系统功能等 设计。 3)程序设计:在具体的 DBMS 环境下,创建数据库建立及必要的其它部分(如视 图、存储过程、触发器等) ;运用掌握的语言,编写程序,实现所设计的模块功能(可选) 。 4)调试与测试:自行调试程序,成员交叉测试程序,并记录测试情况。 5)验收与评分:指导教师对每个小组的开发的系统,及每个成员开发的模块进行综合验 收,结合设计报告,根据课程设计成绩的评定方法,评出成绩。 四.本课程设计内容与要求 掌握数据库的设计的每个步骤,以及提交各步骤所需图和文档。通过使用目前流行的 DBMS(首选 SQL SERVER 2005,不得使用 ACCESS) ,建立所设计的数据库,并在此基础 上实现数据库查询、连接等操作和触发器、存储过程等对象设计。 1.应用系统需求分析 学生自选由指导教师给定的多个课程设计的题目,进行应用系统需求分析工作,绘制操 作流程图、DFD、DD 图以及书写相关的文字说明。 2.概念结构设计 绘制详细的 E-R 图,由指导教师师检查数据结构是否合理。 3.逻辑结构设计 《数据库原理及应用》课程设计指导书 2008 级计算机科学与技术专业 第 3 页 共 20 页 将 E-R 图转换成等价的关系模式;按需求对关系模式进行规范化(建议至少满足第三范 式要求) ;对规范化后的模式进行评价,调整模式,使其满足性能、存储等方面要求;根据局 部应用需要设计外模式。 4.物理结构设计 选定实施环境,存取方法(如索引)等。 5.数据实施和维护 用 DBMS 建立数据库结构,将初始化数据及部分测试数据装入数据库,实现各种查询、 链接应用程序,设计数据库触发器、存储器等对象,并能对数据库做简单的维护操作; 6.课程设计总结 总结课程设计的过程、体会及建议。 7.答辩 进行课程设计答辩,主要了解学生们通过数据库课程设计,对数据库基本知识 的了解程度。 五.上机任务 1.数据库、基本建立和修改。 2.数据加载: 用手工录入或导入等方法实现基本的数据加载。 3.单查询以及多查询:在建立的基本使用 select 基本格式和常用数据库函数; 设计合适的视图,实现多间查询。 4.触发器:设计若干触发器,实现间关联字段修改时的完整性问题。 5.存储过程:设计若干多查询的存储过程,根据需要可以创建带参数的存储过程,并 用语句调用,要求有一定的输出格式。根据个人能力,可以选用 VB、VB、C#、Java 等高级 编程语言设计界面(如果能够确认该内容为学生自做,可在程序设计部分获得加分,否则不 能加分) 。 六.课程设计进度安排(时间为两周,10 天) 时间 内容 学生上机地点 辅导答疑地点 联系人及电话 1~2Day 指导教师指导 DBMS 应用与选题指导 数据库教研室 3~4Day 需求分析及概念结构 设计 图书馆阅览室 实验室 数据库教研室 5Day 逻辑结构设计 实验室 数据库教研室 6Day 物理结构设计 实验室 实验室 7~8Day 数据库实施、调

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值