数据库上机指导_第1页
数据库上机指导_第2页
数据库上机指导_第3页
数据库上机指导_第4页
数据库上机指导_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库原理与技术上机实验安排实验1 SQL server 2000的安装和常用工具的使用【实验内容】1练习安装SQL SERVER 2000及卸载SQL SERVER 2000。(注意WINDOWS登录模式和混合登录模式的区别)2. 在企业管理器中创建一个新的SQL Server服务器组,作为Microsoft SQL Servers的子对象,名称为 “NewGroup”3. 在计算机上再安装一个SQL Server命名实例,实例名为 “people”。 使用企业管理器在NewGroup服务器组下创建一个新的SQL Server注册,使它连接people实例实验2数据库及表的创建和管理【实验内容】1、使用企业管理器创建名为student的数据库,并设置数据库主文件名为syudent_data,大小为10MB;日志文件为student_log,大小为2MB.其他参数取默认值。步骤:a. b. c. d. 2. 使用TransactSQL语言创建一个student1数据库,主文件逻辑名为student1_data,物理文件名为student1.mdf,为10MB,增长速度为10%;数据库的日志文件逻辑名为syudent1_log, 物理文件名为student1.ldf,初始化大小为1MB,最大尺寸为5MB, 增长速度为1 MB;文件存放路径为c:data文件夹下。Create database student1On primry(name=student1_data, filename=c:datastudent1.mdf, size=10,maxsize=unlimited, filegrowth=10%)log on(name=student1_log, filename=c:datastudent1.ldf, size=1,maxsize=5, filegrowth=1)3. 在student数据库中创建一个名为pupil的表,要求:(sno char(6) not null,sname char(10) not null,ssex char(2) not null,birthday datetime not null, polity char(20)步骤:b.c.保存并命名为pupil即可。4.将pupil表的sno设置为主键。 5、 为sname字段设置惟一性约束。步骤:6.为ssex和birthday设置检查性约束,要求ssex只能为男或女,birthday应该大于1987-1-1。步骤:7.为polity字段设置默认约束,值为群众。8 再创建一个学生选课表sc(sno char(6) not null,cno char(10) not null,grade real).为sc表创建外键约束,把sc表的sno和pupil表的sno关联起来,在这两个表之间创建一种制约关系。步骤: 最后保存该关系图即可。实验3 数据查询及维护【实验内容】1. 已知一个名为pupil的表:(sno char(6) not null,sname char(10) not null,ssex char(2) not null,birthday datetime not null, polity char(20),sdept char(20) not null)a.利用insert语句向其中插入一条新的记录:(0007,张三,男,1982-3-21,团员,计算机系)insert into pupilvalues(0007,张三,男,1982-3-21,团员,计算机系)b.利用update语句将编号为0004的学生polity改为党员:update pupilset polity=党员where sno=0004a. 利用delete语句将186-1-1以后出生的女同学记录删除。Delete from pupilWhere polity1986-1-1 and ssex=女2. 针对pupil、sc、course三张表完成以下查询:a. 查询所有学生的基本信息,并按出生日期升序排列select * from pupil order by polityb. 查询女同学的信息和女同学的人数select * from pupil where ssex=女compute count(sno)c. 查询所有男同学的年龄select year(getdate()-year(birthday) as 年龄 from pupild. 所有选课学生的姓名、选修课程名及成绩select sname,cname,gradefrom pupil,sc,coursewhere pupil.sno=sc.sno and o=oe. 不及格学生的姓名select distinct snamefrom pupil,sc,coursewhere pupil.sno=sc.sno and o=o and grade60f. 查询刘姓学生的信息select * from pupil where sname like 刘%g. 查询polity为团员或党员的学生信息select * from pupil where polity in(团员, 党员)h. 查询各门课程的选课人数select cno ,count(sno) from sc group by cnoi. 查询缺少成绩的学生的学号及课程号select sno,cno from sc where grade is null j. 查询与刘成同一个系的学生情况select * from pupil where sdept in(select sdept from pupil where sname= 刘成)k. 查询选修了课程名为MIS的学生的学号和姓名select sno,sname from pupil where sno in(select sno from sc where cno in(select cno from course wnere cname=MIS) 实验4 TransactSQL程序设计【实验内容】1 编写一个用户自定义函数fun_avggrade,要求根据输入的班级号和课程号,求此班级此课程的平均分。Create function fun_avggrade(classnumber as char(10),coursenumber as char(10)returns realbegindeclare avgresultselect avgresult=avg(grade)from scwhere substring(sno,1,len(sno)-2)= classnumber and cno=coursenumberreturn avgresultend2. 编写一个用户自定义函数,完成以下功能:根据两个输入参数(成绩上限和成绩下限),求sc数据表中满足输入条件的学生人数。Create function fun_sumren(maxline real,minline real)returns intbegindeclare personcount as intselect personcount=(select count(distinct sno) from sc)from scwhere grade=minlinereturn personcountend 3.如何通过企业管理器和Transact_SQL语句对视图进行创建、修改和删除?通过企业管理器:创建步骤:最后保存该视图即可。修改步骤:进入该界面重新修改该视图即可。删除步骤:通过Transact_SQL语句:创建:create view 视图名 with encryption as select_statement with check option修改:利用 alter view 视图名删除:利用 drop view 视图名4、 通过Transact_SQL语句创建一个视图,计算各个班级的各门课程的平均分。Create view v_avggradeAsSelect substring(pupil.sno,1,len(pupil.sno)-2) as 班级, Cname as 课程名称, Avg(grade) as 平均分From pupil,sc,gradeWhere pupil.sno=sc.sno and o=oGroup by substring(pupil.sno,1,len(pupil.sno)-2), Cname5. 通过Transact_SQL语句创建一个视图,显示高等数学未过的学生的信息。Create view v_gradenotpassAsSelect pupil.sno,sname,cname,gradeFrom pupil,sc,courseWhere pupil.sno=sc.sno and o=o and grade1 begin print 已经有相同的学号,请重新确认! rollback transaction end else print 数据录入成功! end3.创建一个insert触发器,当在sc表中插入一条新记录时,sno和cno必须是已经存在的学号和课程号,且grade应该在0-100之间。 程序代码如下: create trigger scinsert on sc for insert as declare gradevalue real set gradevalue=(select grade from inserted) print 触发器开始工作 if not exists(select sno from inserted where sno in(select sno from pupil) begin print 无此学生的编号,请重新确认! rollback transaction endelse begin if not exists(select cno from inserted where cno in(select cno from course) begin print 无此课程的编号,请重新确认! rollback transaction end else begin if gradevalue100 begin print 分数有误,请重新确认! rollback transaction end else print 数据插入成功! endend4.创建一个after触发器,在pupil表中删除某学生的记录时,删除其相应的选课记录。 程序代码如下: create trigger studelete on pupil for delete as declare stunum char(10) select stunum=sno from deleted if not exists(select * from pupil,sc where pupil.sno=sc.sno and pupil.sno=stunum) print 无此学生的选课记录! else begin print 开始查找并删除该学生相映的选课记录. delete from sc where sno=stunum print 该学生的选课记录已经删除! end5.创建一个instead of 触发器,当在course表中上出记录时,不允许删除course表中的数据。程序代码如下:create trigger notallowdeleteon courseinstead of deleteasprint instead of触发器开始工作print course表中的数据不允许删除!不能执行删除操作!实验7数据库的备份及恢复、导入和导出【实验内容】1 创建一个备份设备。 2 使用企业管理器对一数据库做一次完全数据备份。3 使用企业管理器恢复某一数据库的完全数据备份4.导入一个文本文件到SQL Server数据库当中。 5.将SQL Server数据库当中的表导出到access数据库当中。实验8动态网站开发环境搭建【实验内容】1、 IIS的安装和添加: 安装成功后在管理工具中显示INTERNET信息服务2、 配置IIS:打开INTERNET信息服务 3、 配置网站项目属性4、 安装DReamweaver MX版5、熟悉DReamweaver的使用 6、网络应用系统的发布配置 实验9-10实验报告 实验名称 学生管理系统设计【实验目的】1. 掌握应用系统开发的基本方法; 2. 掌握数据库设计;3. 系统功能模块设计。【实验内容】1、系统功能和模块划分图4:Server Script5:IIS配置2:登录及学生数据管理3:学生信息查询1:主页、页面整体风格2、系统页面程序清单及功能:o Login.asp: 登录输入操作员编号和密码页面o Default.asp:登录成功进入主页,提供整体说明和操作导航;o AddressErr.htm:登录输入错误时的提示页面;o Student_list.asp:学生信息查询后得到的符合要求的学生信息列表o Student _Add.asp

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论