数据库表视图的创建与维护实验
实验2-创建及维护表[2页]
实验:表管理-创建及维护表
一、实验目的与任务
目的:旨在训练学生使用T-SQL语句创建及维护表,能根据给出的语法创建符合用户需求的表结构,通过表的创建,了解表的约束性规则及表数据的维护。
任务:创建表及表数据的维护,在数据库中创建相应的表,并对表进行数据的添加、删除及修改。
任务1:使用T-SQL语句创建数据库,脚本如下:
CREATE DATABASE SchoolInfo --创建数据库
任务2:创建表Department
任务3:
任务4:
任务5:创建表SC
任务6:使用insert语句为各表添加若干记录(试插入违反约束性规则的记录查看执行的结果)
任务7:使用update语句将1系学生的StuScore值加1,年龄加1岁。
任务8:删除SC表选择1号课程的记录。
三、内容与要求
课题名称——表的创建及维护
(一)课题内容
按照任务1至任务8逐步完成,完成后学生可以独立管理表,对表创建,表数据的维护。
(二)课题要求
按照实验任务书逐步完成实验
(三)考核及报告要求
1. 考核
能独立完成任一项任务。
2. 报告要求
提交一份完整的实验报告,实验报告中详细给出每个任务的解决方案,解决方案后附带每个任务的实验结果。
四、主要仪器设备
硬件:PC机
软件:SQL SERVER 2005。
实验一 数据库数据表的创建与维护wl
实验一数据库的创建与维护1.使用命令方式创建数据库。
创建一个名为“TSGL***”的图书管理数据库,该数据库的主数据文件逻辑名称为TSGL***_data,物理文件名为TSGL***_data.mdf,数据库初始大小为3MB,增长速度为10%,最大容量为无限大;数据库的日志文件逻辑名称为TSGL***_log,初始大小为1MB,增长速度为1MB,最大容量为5MB。
说明:●保存初始库截图。
●数据库的命名方式数据库和文件的命名中,其中***代表每个同学各自学号的后三位。
如:张芳同学的学号为20090412021号,张芳建立的数据库名称为“TSGL021”,文件的命名依此类推。
●保持文件名的命名方式将每个实验所产生的全部SQL语句保存在一个.sql文件中,该文件的文件名命名为:“##号***实验%.sql”,其中“##”为学号后两位,“***”为姓名,“%”为实验编号。
如:21号张芳实验1. sql。
●以后每个要求的实验均依照此方法命名并保存文件。
2. 使用命令方式修改、查看图书管理数据库(1) 修改图书管理数据库,修改后的参数如下:数据文件初始大小为5MB,数据文件最大值不受限制。
(2)为数据库TSGL***添加一个文件组FGROUP1,并为其添加一个数据文件,参数设置如下:逻辑名称为TSGL***_data1,初始大小为5MB,最大值不受限制,存放位置为自己创建的文件。
保存修改后的截图。
(3) 删除次要数据文件;(4) 删除文件组FGROUP1。
以图书管理数据库TSGL为例,创建读者表(reader)、图书表(book)、借阅表(Lend)和借阅历史表(historytable)四个表。
具体要求如下:3.使用T-SQL语句创建数据表(1)读者表(reader)借书证号(lno):定长字符型,长度12个字符;读者姓名(name): 定长字符型,长度8个字符;性别(sex): bit;出生日期(birdate):日期型,不能为空;所在系部(dept):变长字符型,最大20个字符长度;就读专业(spec):变长字符型,最大20个字符长度;借阅数量(bornum):整型。
实验2-数据表的建立与维护
实验名称
数据表的建立与维护
实验序号
实验日期
姓名
院系
计算机科学与信息工程学院
班级
学号
专业
计算机科学与技术
指导教师
成绩
一、实验目的和要求
1.掌握数据库表的基础知识。
2.掌握创建、修改、使用、删除表不同方法,要求会用Create Table语句建表。
二、实验预习内容
1.预习在集成环境中创建和修改数据表的基本方法。
2.预习SQL数据定义,如何Create Table语句创建和修改数据表。
三、实验项目摘要
1.建立一个数据库,名称自定。
2.在集成环境中建立以下5张表(可不用Create Table语句),表的结构和数据均显示如下。
表的约束说ቤተ መጻሕፍቲ ባይዱ:
读者表Readers中,读者编号为主码,种类编号为外码,参照读者类别ReaderCategory中主码,性别只能是男或女;
读者表Readers
读者类别ReaderCategory
图书表Books
借阅表Borrow
图书类别BookCategory
3.按照实验指导书P71第(4)题的要求,使用Create Table语句建表,建立供应商、零件、工程、供应关系四张表,并输入数据。
4.将你的数据库做好备份(方法见实验一),以备下次上机时使用。
)
图2-8
(4)用Create Table创建供应关系表SPJ的语句如下,结果如图2-9。
CREATE TABLE SPJ
(SN VARCHAR (10) FOREIGN KEY REFERENCES,
PN VARCHAR (10) FOREIGN KEY REFERENCES,
数据库实验数据更新和视图的建立与使用
实验五实验名称:数据更新和视图的建立与使用一、实验目的1.熟练使用INSERT/DELETE/UPDATE语句进行表的更新操作。
2. 理解视图的定义、视图的优点与视图的工作原理。
掌握在企业管理器和查询分析器中创建、修改及删除视图。
能够熟练掌握利用视图向表中插入、删除和修改数据。
二、实验原理1.数据更新操作只能针对一个表进行,即每次只能在一个表中插入、删除和修改数据。
用INSERT语句可以通过使用V ALUES关键字一次只向一个表插入一条记录,也可以通过子查询向一个表中插入若干条记录;当使用DELETE和UPDATE语句实现表的删除和更改时,若题目中涉及多个表的信息,可以使用子查询来挑选出部分数据,以作为删除或更改的条件,也可以在语句中用FROM 子句给出题目中涉及的所有表,而在WHERE子句中给出多个表之间的连接条件。
2. 利用CREATE VIEW、ALTER VIEW 、DROP VIEW语句创建、修改及删除视图。
由于视图是虚表,通过视图向表中添加数据时必须满足一定的条件。
如果视图引用了多个数据表,那么在通过视图向数据表中添加数据时,这个语句只能指定同一个表中的字段。
如果通过一个引用了多个数据表的视图向这些数据表中添加数据时,必须书写多个INSERT语句。
通过使用多个表的视图对数据表进行更新也需要书写多个UPDATE语句,另外适用于INSERT操作的许多限制同UPDATE操作。
使用DELETE语句可以通过视图将数据表中的数据删除。
但如果视图应用了两个或两个以上的数据表,则不允许删除视图中的数据。
另外,通过视图删除的记录,不能违背视图定义的WHERE子句中的条件限制。
三、实验设备安装有SQL SERVER 2005的计算机。
四、实验内容凡是能用多种方法实现的,请用多种方法实现。
1、为各表添加若干条记录,必须符合实验二中设定的各种约束。
2、将每个员工的薪水上调10%。
3、删除sales表中作废的订单(其发票号码为‘I000000004’),其订货明细表中的数据也一并删除。
数据表的创建与维护实验心得5篇
【最新】数据表的创立与维护实验心得5篇在sql server索引根底知识系列中,第一篇就讲了记录数据的根本格式.那里主要讲解的是,数据库的最小读存单元:数据页.一个数据页是8k大小.这里给大家分享一些关于数据表的创立与维护实验心得,希望对大家有所帮助.数据表的创立与维护实验心得1了很多在学校学不到的东西,受益匪浅.在这个信息时代,信息都是电子化.很多方面根本不在是一些手把手的管理,而是在电脑面前操作一下即可,让我们真正享受到高科技的待遇.在软件开发领域,做一个工程的出发点是提高办事效率.而在工程制作的过程中我们要使一个软件简洁实用,人性化,快捷方便.这次实习的主要任务是图书管理系统的开发.工程运行的平台是windows_p,运用系统主要是microsoftvisualstudio_,microsoftsqlserver_,运用的知识主要有我们学习过的知识数据库技术,以及实习过程中所提及的知识.在软件开发果过程中首先要了解三层结构的的含义及其设计模式思想部署企业级数据库业务系统开发.三层结构是一种成熟.简单并得到普遍应用的应用程序架构,它将应用程序结构划分三层独立的包,包括用户表示层.业务逻辑层.数据访问层.其中将实现人机界面的所有表单和组件放在表示层,将所有业务规那么和逻辑的实现封装在负责业务逻辑组件中,将所有和数据库的交互封装在数据访问组件中.三层结构示意图三层结构是一种严格分层方法,即数据访问层只能被业务逻辑层访问,业务逻辑层只能被表示层访问,用户通过表示层将请求传送给业务逻辑层,业务逻辑层完成相关业务规那么和逻辑,并通过数据访问层访问数据库获得数据,然后按照相反的顺序依次返回将数据显示在表示层.下面介绍图书管理系统开发技术一系统的功能设计首先对系统进行需求分析,我们必须要知道要做一个系统用来干什么,这需要在对用户需求进行充分调研的根底上,深入理解并描述出软件的功能.性能.接口等方面的需求,可以使用uml建模作为需求分析和系统设计的有效方法.图(1)给出了本图书管理系统的功能结构图,其工作流程为:普通用户直接登录主页面,只能浏览.快速查询图书.注册新用户.修改自己的密码以及查看图书的详情,管理员用户除了可以完成普通用户的操作外,还可以进入图书管理模块进行图书添加.修改和删除的操作.(1)操作简单.界面友好:插入表格的页面布局,使得图书的录入工作更简便;许多项选择项包括图书类别.来源等只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况.(2)即时可见:对图书的处理(包括图书添加.修改.删除)将立即在主页的对应栏目显示出来,到达即时处理.即时见效的功能.(3)功能完善:包括常见网站的图书管理的各个方面:图书新增.浏览.删除.修改.检索等各个方面,完整地实现了网站对即时图书的管理要求.(4)方便移植:针对不同的图书馆,只需要稍作修改就可以开发出适合本企业特点的网站图书管理系统.⑴系统登录:该模块负责将用户分为普通用户和管理员用户来实现用户权限的管理.⑵图书类别管理:该模块只有管理员才有的权限,管理员可以对图书的大.小类进行添加.更新.删除等操作.⑶库存图书浏览:该模块负责分页列出图书馆中所有图书的信息,包括图书名称.作者.出版社,图书状态,每条记录后面都有一个,被做成一个超,点击它们就能跳转页面可以查看的详情如图书封面.图书数量.图书出版年份.⑷库存图书添加:该模块是图书管理员进行图书的添加,权限仅限管理员,在此页面中的大小类实现了联动作用,点击其大类,小类的下拉列表中就会显示与之对应的小类,从中选择即可.⑷图书快速查询:该模块提供了图书快速查询功能,输入待查找的图书名称可以快速地找到符合条件的图书,并输出查询结果,点击产看详情字样就可以查看图书的详细信息.⑸编辑系统用户:该模块负责分页罗列注册用户的具体信息,普通用户本人或管理员可以对用户进行删除.修改.非普通用户或系统管理员外不具有对该用户的处理权限,所以不同普通用户进入此页面将显示不同的内容.码及新密密码,点击更改即可修改密码,并写入数据库中保存.⑺系统名称设置:该模块为管理员权限,管理员可以更改图书系统的名称.普通用户为不可见状态.⑻系统使用说明:主要是供普通用户和管理员阅读,使之更好地了解本系统的权限以及用法.下面给出系统后端数据存储方案利用microsoftsqlserver_建立数据库及其存储过程.这里给出几个必需的数据表,主要有system,bigclass,smallclass,users,books.p局部设计访问数据库信息的第一步是和数据库源建立连接.ado提供connection对象,可以使用该对象建立和管理应用程序和odbc数据库之间的连接.connection对象具有各种属性和方法,可以使用它们翻开和关闭数据库连接,并且发出查询请求来更新信息.要建立数据库连接,在中到数据库ter(),下面的函数方法是对数据绑定此方法也可以插在所要调用的函数中,但是将这个方法单独提出有利于后面的利用,后面对数据进行绑定时就可以用这个方法,防止做重复的工作,减少工作量.数据表的创立与维护实验心得2持续一个月的数据库实训,让我参与了软件工程化的开发过程.其中体会最深的便是我们这个实训网的几个之最:一.工程最大:工程大是因为我们这个事业起点网站涉及到用户众多-高校,企业,学生,老师,专家,第二个原因是网站的功能多-用户管理,网上实习,网上竞赛,毕业实习设计,工程管理,人才库管理,人才推荐,搜索工程大很容易造成系统范围的泛滥,在我们的开发初期,由于需求不太明确,功能实现没有重点,造成了需求范围的扩大,给工程开发进度造成了严重的滞后性.然后我们召开了会议讨论了这个问题,一致认同先把工程的根本功能实现,将网站的根本架构搭建起来,最后再在这个根底上继续增加我们网站的其他功能.因此在这个过程中,我深刻体会到了软件工程初期阶段的需求分析以及概要设计的重要性,这两个文档是指导我们后期开发的最重要的依据.:如此庞大的系统,就需要庞大的数据库来支持,所以工程大的直接后果就是我们的数据库表特别多,而且表与表之间的依赖关系也复杂,实体类之间的关系众多,设计起来有一定的难度.数据库的另外一个问题是-数据表的属性,数据表属性的设计完全是依赖于我们刚开始做的需求分析文档,如果需求分析不完整的话,就会造成数据库表属性的缺失,从用户的角度看,就会觉得你的系统提供的数据不够全面,信息量小.三.开发团队最大:我们团队一共有十四个人,这个对于我们的工程经理来说,是一个相当严峻的问题,毕竟十四个人的团队相当于其他几个小组加起来的人数总和,管理起来有相当大的难度.对于我们这些小组成员来说,由于沟通渠道太多,造成了我们工程中遇到问题,不知道去跟哪个小组成员沟通.为了解决这个问题,我们在团队中又选出了三个小组长,小组成员遇到问题,先去咨询小组长,然后小组长提供反应信息.四.工程各个模块间藕合度高:网站涉及的各个面之间的链接也是其中重要的模块接口.这个问题由于我们前期做好了充分的沟通以及按照概要设计中的接口说明去设计自己的模块,所以后期的模块整合没有遇到什么太大的不兼容性等问题.接下来就谈谈我这一个月中的工作:需求分析阶段:需求分析阶段我完成了网上竞赛模块的需求分析,其中遇到的主要问题是阅读材料后发现网上实习,网上竞赛,毕业设计指导这几个模块的功能是类似的,提取需求分析后不够明确,经过几次跟汤老师的交流后,确定了这几个模块之间的具体差异,网上竞赛模块的根本需求也大致确定了,网上竞赛模块的根本功能就是学生通过网站报名参加竞赛,企业审核通过后,专家对作品进行评分,排名.概要设计阶段:在需求分析的根底上,对网上竞赛模块进行了比拟具体的概要设计,流程图(ipo图以及用例图);这个阶段的主要难点是对网上竞赛业务流程的描述,如何实现学生报名,企业发布,专家评审的步骤操作,与及跟其他模块对该模块的限制.数据库设计阶段:我负责整合初步遇到的问题就是数据库实在是太大了,最后下来一共有30多张表,表与表之间的关系复杂,关联性大,需要设置的外键较多,很难将所有的属性字段给提取出来,属性的类型设置也是一个问题,采用数值型还是采用字符串性在数据库设计中尤为重要,因为在后台搜索方面,数值型比拟快捷,而在数据显示方面,字符串型又有直接读出不用转换的好处.每个表的主键我们采用了用实体的编号去标记它,因为这样实体间关联起来会更加简单.数据库的设计关键是要对整个工程的整体的把握,并且要细化对每个实体类的具体属性要求.详细设计阶段:我觉得是最重要的一个方面,一个完整的详细设计说明应该可以帮助程序员完成具体的实现,程序员可以不用考虑模块之间的耦合问题,只需要将单一的功能按照逻辑顺序编写出来就可以了.网站整体构架搭好了,我们就可以在里面填充自己的功能了.但是因为时间太仓促了,我们这个阶段也就缩水了,带来后面的问题就是后期代码编写的时候比拟混乱,函数接口较难统,界面风格多样化.这个阶段,我的主要工作是跟队友一起设计出了网上竞赛模块的学生,企业,管理员,高校以及专家的界面.et开发的,主要任务就是从工具中选出你想要的控件,然后在控件响应函数中填充代码,完成相应的事件响应.这里遇到的最大问题是页面的排版问题,因为自己是第一次开发网站,造成了自己设计的界面风格单调,不太美观,现在就尽量做到页面的整齐.这个阶段主要做的就是:写代码→编译→调试→写代码.这一个月中我学到了很多东西,技术方面就是学会了用编写网站,最重要的是让我经历了软件工程化的所有阶段,让我对整个软件工程有了感性的认识,而且将大学三年所学到的知识进行了一次系统的串联,更重要的是学会了如何跟工程团队中的成员沟通问题,这是一个珍贵的实践经验.数据表的创立与维护实验心得3我们是_年3月7号进入宏天实训公司参加软件开发实训的,在此次实训中,除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完成一个任务,懂得了享受工作.当遇到问题,冷静,想方法一点一点的排除障碍,到最后获取成功,一种自信心就由然而生,这应该就是工作的乐趣.有时候不懂的就需要问别人了,虚心请教,从别人的身上真的能学到自己没有的东西,每一次的挫折都会使我更接近成功.还有学会了在工作中与人的合作与交流,同乐同累,合作互助,这是团体的精神,也是必须学习的东西.经过之前的在校学习,对程序设计有了一定的认识与理解.在校期间,一直都是学习理论知识,没有时机去参与工程的开发.所以说实话,在实训之前,软件工程开发对我来说是比拟抽象的,一个完整的工程要怎么分工以及完成该工程所要的步骤也不是很明确.而经过这次实训,让我明白了一个完整工程的开发,必须由团队来分工合作,并在每个阶段中进行必要的总结与论证.一个完整工程的开发它所要经历的阶段包括:远景范围规划和用例说明.工程结构和风险评估.业务功能说明书.详细设计说明书.代码实现.测试和安装包等等.与否的关键,也就是说,前期作业都是为代码的实现所做的准备.我深刻的认识到要成为一名优秀的软件开发人员不是一件容易的事情,不仅要有足够的干劲和热情,还要有扎实的编写代码根底,必须要有事先对文档进行可靠性报告,功能说明书,详细设计说明书等的编写和一些风险评估的编写的能力.除了图书馆,最能让我感觉到身在大学的就是实训机房,在匆匆过去的两个月内,我往返于实训机房与宿舍之间,使我享受了一个充实的学习时期,让我感受到了大学的魅力,对自己充满信心,对大学充满信心,以积极的心态迎接明天挑战.实训中要求有扎实的理论根本知识,操作起来才顺心应手,我这时才明白什么是〝书到用时方恨少〞.这就激发了学习的欲望.〝学以致用〞,就是要把学来的知识能运用到实际操作当中,用实践来检验知识的正确性.我想,这是实训的最根本目的.〝纸上得来终觉浅,绝知此事要躬行!〞,在短暂的实训过程中,让我深深感受到自己在实际运用中专业知识的匮乏.以前总以为自己学的还不错,一旦应用到实际就大不一样了,这时才真正领悟〝学无止境〞的含义.经过为期两个月的电子政务效劳平台Server数据库进行连接操作方面有了本质的提高.短短的实训结束了,为我将来的就业打下了良好的根底,也提高了我的软件开发的水平,今后我将会更加努力的学习,不断提高自身素质,开拓创新,与时俱进,做一个优秀的软件开发工程师.数据表的创立与维护实验心得43月7号进入宏天实训公司参加软件开发实训的,在此次实训中,除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完成一个任务,懂得了享受工作.当遇到问题,冷静,想方法一点一点的排除障碍,到最后获取成功,一种自信心就由然而生,这应该就是工作的乐趣.有时候不懂的就需要问别人了,虚心请教,从别人的身上真的能学到自己没有的东西,每一次的挫折都会使我更接近成功.还有学会了在工作中与人的合作与交流,同乐同累,合作互助,这是团体的精神,也是必须学习的东西.经过之前的在校学习,对程序设计有了一定的认识与理解.在校期间,一直都是学习理论知识,没有时机去参与工程的开发.所以说实话,在实训之前,软件工程开发对我来说是比拟抽象的,一个完整的工程要怎么分工以及完成该工程所要的步骤也不是很明确.而经过这次实训,让我明白了一个完整工程的开发,必须由团队来分工合作,并在每个阶段中进行必要的总结与论证.一个完整工程的开发它所要经历的阶段包括:远景范围规划和用例说明.工程结构和风险评估.业务功能说明书.详细设计说明书.代码实现.测试和安装包等等.一个工程的开发所需要的财力.人力都是很多的,如果没有一个好的远景规划,对以后的开发进度会有很大的影响,甚至会出现在预定时间内不能完成工程或者完成的工程跟原来预想的不一样.一份好的工程结构.业务功能和详细设计说明书对一个工程的开发有明确的指引作用,它可以使开发人员对这个工程所要实现的功能在总体上有比拟明确的认识,还能减少在开发过程中出现不必要的麻烦.代码的实现是一个工程开发成功与否的关键,也就是说,前期作业都是为代码的实现所做的准备.我深刻的认识到要成为一名优秀的软件开发人员不是一件容易的事情,不仅要有足够的干劲和热情,还要有扎实的编写代码根底,必须要有事先对文档进行可靠性报告,功能说明书,详细设计说明书等的编写和一些风险评估的编写的能力.除了图书馆,最能让我感觉到身在大学的就是实训机房,在匆匆过去的两个月内,我往返于实训机房与宿舍之间,使我享受了一个充实的学习时期,让我感受到了大学的魅力,对自己充满信心,对大学充满信心,以积极的心态迎接明天挑战.实训中要求有扎实的理论根本知识,操作起来才顺心应手,我这时才明白什么是〝书到用时方恨少〞.这就激发了学习的欲望.〝学以致用〞,就是要把学来的知识能运用到实际操作当中,用实践来检验知识的正确性.我想,这是实训的最根本目的.〝纸上得来终觉浅,绝知此事要躬行!〞,在短暂的实训过程中,让我深深感受到自己在实际运用中专业知识的匮乏.以前总以为自己学的还不错,一旦应用到实际就大不一样了,这时才真正领悟〝学无止境〞的含义.软件开发平台有了更深一步的了解,对微软根底类库的认识与使用也有了大大的提高.以及如何使用SQL Server数据库进行连接操作方面有了本质的提高.短短的实训结束了,为我将来的就业打下了良好的根底,也提高了我的软件开发的水平,今后我将会更加努力的学习,不断提高自身素质,开拓创新,与时俱进,做一个优秀的软件开发工程师.数据表的创立与维护实验心得5持续一个月的数据库实训,让我参与了软件工程化的开发过程.其中体会最深的便是我们这个实训网的几个之最:一.工程最大:工程大是因为我们这个事业起点网站涉及到用户众多-高校,企业,学生,老师,专家,第二个原因是网站的功能多-用户管理,网上实习,网上竞赛,毕业实习设计,工程管理,人才库管理,人才推荐,搜索工程大很容易造成系统范围的泛滥,在我们的开发初期,由于需求不太明确,功能实现没有重点,造成了需求范围的扩大,给工程开发进度造成了严重的滞后性.然后我们召开了会议讨论了这个问题,一致认同先把工程的根本功能实现,将网站的根本架构搭建起来,最后再在这个根底上继续增加我们网站的其他功能.因此在这个过程中,我深刻体会到了软件工程初期阶段的需求分析以及概要设计的重要性,这两个文档是指导我们后期开发的最重要的依据.二.数据库表最多:如此庞大的系统,就需要庞大的数据库来支持,所以工程大的直接后果就是我们的数据库表特别多,而且表与表之间的依赖关系也复杂,实体类之间的关系众多,设计起来有一定的难度.数据库的另外一个问题是-数据表的属性,数据表属性的设计完全是依赖于我们刚开始做的需求分析文档,如果需求分析不完整的话,就会造成数据库表属性的缺失,从用户的角度看,就会觉得你的系统提供的数据不够全面,信息量小.三.开发团队最大:我们团队一共有十四个人,这个对于我们的工程经理来说,是一个相当严峻的问题,毕竟十四个人的团队相当于其他几个小组加起来的人数总和,管理起来有相当大的难度.对于我们这些小组成员来说,由于沟通渠道太多,造成了我们工程中遇到问题,不知道去跟哪个小组成员沟通.为了解决这个问题,我们在团队中又选出了三个小组长,小组成员遇到问题,先去咨询小组长,然后小组长提供反应信息.自己的模块,所以后期的模块整合没有遇到什么太大的不兼容性等问题.接下来就谈谈我这一个月中的工作:需求分析阶段:需求分析阶段我完成了网上竞赛模块的需求分析,其中遇到的主要问题是阅读材料后发现网上实习,网上竞赛,毕业设计指导这几个模块的功能是类似的,提取需求分析后不够明确,经过几次跟汤老师的交流后,确定了这几个模块之间的具体差异,网上竞赛模块的根本需求也大致确定了,网上竞赛模块的根本功能就是学生通过网站报名参加竞赛,企业审核通过后,专家对作品进行评分,排名.概要设计阶段:在需求分析的根底上,对网上竞赛模块进行了比拟具体的概要设计,流程图(IPO图以及用例图);这个阶段的主要难点是对网上竞赛业务流程的描述,如何实现学生报名,企业发布,专家评审的步骤操作,与及跟其他模块对该模块的限制.就是数据库实在是太大了,最后下来一共有30多张表,表与表之间的关系复杂,关联性大,需要设置的外键较多,很难将所有的属性字段给提取出来,属性的类型设置也是一个问题,采用数值型还是采用字符串性在数据库设计中尤为重要,因为在后台搜索方面,数值型比拟快捷,而在数据显示方面,字符串型又有直接读出不用转换的好处.每个表的主键我们采用了用实体的编号去标记它,因为这样实体间关联起来会更加简单.数据库的设计关键是要对整个工程的整体的把握,并且要细化对每个实体类的具体属性要求.详细设计阶段:我觉得是最重要的一个方面,一个完整的详细设计说明应该可以帮助程序员完成具体的实现,程序员可以不用考虑模块之间的耦合问题,只需要将单一的功能按照逻辑顺序编写出来就可以了.网站整体构架搭好了,我们就可以在里面填充自己的功能了.但是因为时间太仓促了,我们这个阶段也就缩水了,带来后面的问题就是后期代码编写的时候比拟混乱,函数接口较难统,界面风格多样化.这个阶段,我的主要工作是跟队友一起设计出了网上竞赛模块的学生,企业,管理员,高校以及专家的界面.,主要任务就是从工具中选出你想要的控件,然后在控件响应函数中填充代码,完成相应的事件响应.这里遇到的最大问题是页面的排版问题,因为自己是第一次开发网站,造成了自己设计的界面风格单调,不太美观,现在就尽量做到页面的整齐.这个阶段主要做的就是:写代码→编译→调试→写代码.这一个月中我学到了很多东西,技术方面就是学会了用编写网站,最重要的是让我经历了软件工程化的所有阶段,让我对整个软件工程有了感性的认识,而且将大学三年所学到的知识进行了一次系统的串联,更重要的是学会了如何跟工程团队中的成员沟通问题,这是一个珍贵的实践经验.数据表的创立与维护实验心得。
北邮大三下数据库实验报告2
北京邮电大学实验报告课程名称数据库系统原理实验内容实验(2)数据库表/视图的创建与维护班级2013211** 姓名 ***指导老师卢向群成绩_________2016年4月10日实验二数据库表/视图的创建与维护实验实验目的1.通过进行数据库表的建立操作,熟悉并掌握SQL SERVER数据库表的建立方法,理解关系数据库表的结构,巩固SQL标准中关于数据库表的建立语句;2.通过进行数据库表数据的增加、删除和插入等维护操作,熟悉并掌握SQL SERVER数据库数据的操作方法,巩固SQL中关于数据维护的语句;3.通过对SQL SERVER中建立、维护视图的实验,熟悉SQL SERVER中对视图的操作方法和途径,理解和掌握视图的概念。
实验内容建立相应的表及视图,并熟悉基本操作,例如数据增删改、表结构修改等。
实验环境C/S结构,SQL Server企业版服务器及客户端;数据库存储在服务器上,表和视图定义也存储在服务器上,同学可通过网络使用客户端连接到服务器上进行操作。
实验要求详尽记录每一步骤。
截图并注解。
实验步骤1.熟悉课程实验背景知识;2.根据物理模式使用SQL Server创建相应的表可采用两种方法创建表:A.使用对象资源管理器。
B.SQL语句。
A.使用对象资源管理器的方法:①光标移到“表”上,右键选择新建表。
②输入表的属性、数据类型等信息,还可以设置主键、外键。
但是本次实验不需要先新建表,可以直接导入表。
导入表的步骤见下。
B.用SQL语句创建表。
①在对象资源管理器中单击右键,选择“新建查询”,在空白框中写入创建表的SQL语句。
如图所示:执行命令后,刷新可在资源管理器中看见新建好的book 表。
3.将教师提供的数据导入表;①如图选择“导入数据”。
②选择数据源和路径。
③勾选相应的表格④点击下一步,直到完成数据导入。
刷新可见到导入成功的表。
4.对表做增加记录的操作。
①右键,选择新建查询②在中间空白框内输入SQL语句,用于执行增加记录的操作初始的class 表插入一条记录后的class 表成功插入第13条记录。
数据库表与视图的基本操作实验报告
VALUES('16138211039,'李琳琳’,女’,'1998-6-3', '160802')GC
SELECT * FROM v ageSELECT¥FROM student
由于该视图创建了WITH CHECK OPTION条件约束,当插人记录时所有“年龄”“不符合条件的记录无法插人和修改,并显示错误提示信息:
USE teaching”GO
CREATE VIEN V teacher. course AS
SELECT x. teacherno, tname, prof, cname,classnoFROM teacher x, course y, teach class z
WHER x. teacherno =z. teacherno and y. courseno = z. courseno
⑦指定分组依据。打开“查询设计器”菜单,选择“添加分组依据”命令,默认情况下,在查询结果集内出现的列course. courseno和course. cname将成为GROUP BY子句的一部分。对于score.final,除了作为查询条件外,还需与聚合函数生成计算列作为查询结果集中的组成部分,因此需将其再次添加到网格窗格中.并选中“输出”复选框,指定计算列别名为average.
SELECT studentno, sname, sex, birthday, classnoFROM student
WHERE year(getdate()) year(birthday)>= 18WITH CHECK OPTION
③在添加了WITH CHECK OPTION选项的视图中执行如下插人语句:
数据库实验——视图的创建与使用
数据库实验——视图的创建与使用数据库是一种利用计算机系统来管理、存储、处理数据的技术,视图则是在数据库中使用的一种技术。
视图是一种虚拟表,实际上并不存储数据,而是使用查询语句从一个或多个表中提取所需的数据。
在本次实验中,将学习视图的创建和使用。
一、实验目的1. 理解视图的概念和特点;2. 掌握视图的创建和使用方法;3. 熟悉视图的应用场景。
二、实验内容1. 视图的创建方法;2. 视图的使用方法;3. 视图的实际应用。
三、实验过程1. 视图的创建方法视图的创建方法如下:CREATE VIEW [视图名称] AS [查询语句];例如,要从学生表中提取所有学生的姓名和学号,则可以使用以下语句创建视图:CREATE VIEW student_info AS SELECT sname, sno FROM student;这样,就创建了一个名为student_info的视图,其中包含学生表中的姓名和学号两列数据。
2. 视图的使用方法创建视图之后,可以像使用普通表一样使用视图。
例如,可以使用SELECT语句来查询视图中的数据,如下所示:SELECT * FROM student_info;这样就可以查询出student_info视图中的所有数据。
3. 视图的实际应用视图在实际应用中有很多用途,例如:(1)简化查询语句当数据库中有较多的关联表时,查询语句会变得非常复杂。
此时,可以使用视图来简化查询语句。
例如,以下语句查询学生所在的班级名称:SELECT s.sname, ame FROM student s INNER JOIN class c ON s.classno = c.classno;使用视图后,查询语句可以变得更简洁:CREATE VIEW student_class AS SELECT s.sname, ame FROM student s INNER JOIN class c ON s.classno = c.classno;SELECT * FROM student_class;(2)保护数据安全例如,可以创建只包含学生姓名和学号的视图,而不包含其他敏感数据,以确保保护学生的隐私。
实验:数据库的建立和维护
实验2:数据库的建立和维护实验本实验需要2学时。
一、实验目的要求学生熟练掌握使用SQL、Transact-SQL和SQLServer企业管理器建立数据库、表、修改数据库、表和删除数据库和表的操作。
二、实验内容和步骤1.创建数据库1)在企业管理器中创建数据库姓名_数据库名,要求:数据库姓名_数据库名初始大小为10MB,最大大小为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始大小为2MB,最大可增长到5MB,按1MB增长;数据库的逻辑文件名和物理文件名均采用默认值;(分别为姓名_数据库名和e:\姓名\data\姓名_数据库名.mdf事务日志的逻辑文件名和物理文件名也采用默认值。
(分别为姓名_数据库名_LOG和e:\姓名\data\姓名_数据库名)2)②使用T-SQL语句创建数据库姓名_数据库名_2,要求同1;Createdatabase姓名_数据库名_2On(name=STUDENT_01_data,filename='e:\姓名\data\姓名_数据库名',size=10,maxsize=unlimited,filegrowth=10%)logon(name=student1_log,filename='e:\姓名\data\姓名_数据库名.mdf',size=2,maxsize=5,filegrowth=1)2.创建表以上面创建的数据库为例,创建表。
创建表实际上就是创建表结构,再向表中输入数据。
既可以使用企业管理器创建表,也可以用Transact-SQL命令创建表。
(1).使用企业管理器创建表(2).使用Transact-SQL命令创建表【例1】创建图书信息表Books。
CREATETABLEbooks(编号char(15)CONSTRAINTPK_BooksPRIMARYKEY,书名varchar(42)NULL,作者varchar(8)NULL,出版社varchar(28)NULL,定价realNULLCONSTRAINTCK_BooksCHECK(定价>0))上面例子创建了一个包含5个列的books表,记录了图书的编号、书名、作者、出版社、定价等基本信息。
实验1 库表的创建与维护
《数据库原理与应用》实验实验一数据库、表的创建与维护一、实验目的1.熟悉SQL的数据定义语言,能够熟练使用SQL语句来创建和更改基本表2.创建和取消索引;二、实验内容数据定义:1.创建关系数据库S_T,在数据库中存在四张表格,分别为:学生表students(sno,sname,email,grade);其中Sno:char(10),主码;Sname:char(8),Email:char(30),Grade:smallint;教师表Teachers(Tno,Tname,email,salary);Tno:CHAR(8) ,主码;Tname:char(8) 非空约束,Email:char(30),Salary: real 且Salary>=1500;课程表Courses(Cno,Cname,Chour),Cno:char(8),且cno取值唯一,将该约束命名uq_cno;Cname:char(10),Chour:tinyint;选课表STC(Sno,Tno,Cno,score);Sno:char(10),Cno:CHAR(8),Tno:CHAR(8),Score:int,(Sno,cno)为主码,STC表中的Sno,Cno是外码。
提示:学生表和教师表用对象资源管理创建;课程表和选课表用T-SQL语句创建,并将T-SQL代码保存(保存为*.SQL文件)。
文件名命名规则:sy1-###***.SQL其中###表示你本人学号的后3位,***表示你本人的姓名(汉字)2.用T-SQL语句修改Students表,增加性别Ssex属性(类型CHAR,长度2),自定义约束为只能取“男”或“女”;3.用T-SQL语句把STC表中的score改为smallint型;4.用T-SQL语句为STC表中的cno添加参照完整性约束,参照Courses表中的Cno属性,并回答下列问题:(1)添加外码约束的操作是否成功给出原因分析。
实验7 数据库的视图定义及维护
实验七数据库的视图定义及维护实验一、实验目的本实验的目的是使学生掌握视图的定义与维护操作,加深对视图在关系数据库中的作用的理解。
二、相关知识视图是根据子模式建立的虚拟表。
一个视图可以由一个表构造,也可以由多个表构造。
利用企业管理器和视图创建向导进行创建,查看和修改视图就如同对表的操作一样,非常容易。
三、实验内容本实验的主要内容是:1)创建和删除视图2)查询和更新视图具体完成以下内容:1 建立信息系学生的视图create view信息系asselect *from Studentwhere Sdept='cs'2 建立信息系选修了’C1’号课程的学生视图select *from 信息系where exists (select *from SCwhere 信息系.Sno=SC.Sno and Cno='1')3 建立信息系选修了’C1’号课程且成绩在90分以上的学生视图create view学生表asselect *from 信息系where exists (select *from SCwhere 信息系.Sno=SC.Sno and Grade>90 and Cno='1' )4 定义一个反映学生出生年份的视图create view Ageasselect Sno,Sname,'year'=year(getdate())-Sagefrom Student四、实验步骤创建视图下面利用了SQL Server中提供的视图创建向导,来实现例3(建立信息系选修了1号课程的学生视图)。
a)打开企业管理器窗口,确认服务器,打开数据库文件夹,选中新视图所在的数据库(此例为学生选课数据库)。
b)选择菜单:[工具]|[向导]c)在如图1所示的向导选择对话框中,单击数据库左边的“+”号,使之展开。
选择“创建数据库向导”项,单击“确定”按键。
图1 向导选择对话框d)进入创建视图向导后,首先出现的是欢迎使用创建视图向导对话框,其中简单介绍了该向导的功能。
数据库、数据表、视图的创建与操作报告
数据库、数据表、视图的创建与操作实验报告本指导教师_____ 实验名称:数据库、数据表、视图的创建与操作同组人__________________ 日期:成绩______________一、实验目的熟悉数据库、数据表及视图的创建,并进行各种编辑、整理、索引、筛选、统计。
二、实验环境CPU:Intel® Pentium ® Dual E2200 @ 2.20GHz内存:1G操作系统:Microsoft Windows XP Professional 版本2002 Service Pack 2软件平台:Visual FoxPro 6.0 中文版三、实验原理(或要求)1、使用VF创建一个名叫学生信息的数据库文件;2、在学生信息数据库中创建一张名叫班级的数据库表与一张名叫学生的数据库表;3、班级表包含字段有:班级编号,班级名称;4、学生表包含字段有:姓名、学号、一卡通号、身份证号、班级、性别;5、对学生信息数据库中各表进行编辑、整理、索引、筛选、统计。
四、实验步骤创建学生信息数据库:1、运行VF;2、依次运行:文件→新建,在弹出的新建窗口中选择数据库,点击新建文件;3、在弹出的创建窗口中对数据库重新命名为“学生信息”,保存即可创建学生信息库。
创建班级数据库表:1、接上继续操作,在数据库设计器---学生信息窗口中,选择数据库设计器中的新建表控件。
2、在弹出的新建表中选择新建表,并对其进行重命名为“班级”。
3、重命名保存后在弹出来的“表设计器---班级”窗口中,选中字段页面,添加两个字段,分别如下:字段名类型宽度索引NULL班级编号数值型 4 升序NO班级名称字符型254 NO点击确定后,弹出“现在输入数据记录吗?”点击是。
输入两条记录:1,班级编号;2,班级名称。
关闭窗口即可。
创建学生数据表:创建表操作与创建班级表操作相同。
创建索引1、创建班级数据表索引:班级表:右键→修改,在弹出的界面中选择索引页面。
实验1:数据库创建与维护
实验一数据库创建与维护一.实验目的1.掌握SQL Server的主要工具SQL Server Management Studio的使用方法。
2.理解SQL Server数据库的逻辑结构和物理结构,理解数据表的结构特点以及数据完整型约束的概念、索引的基本概念。
4.掌握在SQL Server Management Studio中创建和维护数据库、数据表结构的方法。
5.了解对数据表添加、删除和更新数据记录的方法,了解在数据表上创建索引的方法。
二.实验环境SQL Server Management Studio三.实验内容1.创建一个名称为BookStore的数据库,支持网上书店系统的信息管理。
要求:(1)将主数据库文件BookStore.MDF放置在的D:\DBF文件夹中,文件大小为5MB,文件增量为2MB,不限制增长。
(2)将事务日志文件BookStore_log.LDF放置在的D:\DBF文件夹中,文件大小为2MB,最大值为10MB,文件按10%增长。
提示:在创建数据库之前,如果D:\DBF文件夹不存在,应先创建。
2.在BookStore数据库(见附件)中按表1.1(a)~表1.8(a)所示的表结构建立数据表,并且为各个表定义相应的域完整性约束,定义主关键字实现实体完整性约束。
如果时间紧张,只需建立Book、Publisher、Customer表。
3.在BookStore数据库的各个相关表之间建立关系,实施参照完整性约束,并创建如图1.5所示的数据库关系图。
提示:注意建立关系的两个字段数据类型必须完全相同。
4.为数据表Book、Publisher、Customer各插入3条记录,各数据表记录如表1.1(b)~表1.8(b)所示。
提示:数据表数据输入要有先后顺序:在关系约束中作为主表的数据应该先输入,外表的数据后输入,并且外键的值是主键中已经存在的值或为空(如果外键允许为空)。
另外,数据输入时要注意已经设置的各种完整性约束。
实验二数据库、表与视图的创建
实验⼆数据库、表与视图的创建实验⼆SQL SERVER2005数据库、表、视图的创建实验平台:安装SQL SERVER2005数据库的PC实验⽬的:1.深⼊SQL SERVER2005数据表的存储引擎与字段数据类型。
2.掌握SQL SERVER2005数据库与数据表的基本操作。
实验内容:1.创建数据库,并查看当前数据库与删除数据库。
2.数据表的创建、修改、删除。
3. 对数据表中的数据进⾏插⼊数据,修改数据,删除数据操作。
实验具体要求:1、创建数据表①创建数据库 stm②学⽣表:Student(Sno,Sname,Ssex,Sage,Sdept,Shobby)课程表:Course(Cno,Cname,Ccredit)学⽣选课表:SC(Sno,Cno,Grade)要求1:sno、sname、Cno为Char(10);Sdept 、Cname 为varchar(20);Sage、Ccredit、Grade为int;Ssex为Char(2);Shobby为Char(10)。
要求2:利⽤check⼦句在sage上建⽴约束,只能输⼊18~40之间的整数。
要求3:建⽴从sc表到student、course表上的外键,实现级联更新和删除要求4:向每个表中输⼊数据。
2、修改表的结构利⽤CREATE TABLE newtable LIKE mytbl,创建⼀个跟Student结构相同的新表stud。
然后利⽤Alter tbale语句实现下⾯操作:①修改字段名sdept为dept②修改字段数据类型dept 字段改为varchar(20)③增加字段Sclassroom char(4)、删除该字段④添加、删除表的外键约束及主键约束3、创建表的索引利⽤CREATE INDEX和ALTER TABLE ADD INDEX语句添加索引①在student表上创建多字段索引:Ssex升序、Sage降序②在student表上创建前缀索引:Sdept(5)④删除刚建⽴的前缀索引4、创建视图利⽤CREATE VIEW语句创建视图①创建视图View_S_SC_C,视图中包含字段为:Sno,Sname,Sdep, Cno,Cname,Ccredit,Grade②创建视图View_S,视图中包含字段为:Sno,Sname,Sdep④删除刚建⽴的视图View_S。
实验02 数据库和表的建立和维护
实验02 数据库和表的建立和维护一、学时:4H,课外学时:2H二、实验目的熟练掌握如何在SQL Server 2000图形环境下建立数据库和表。
三、实验内容创建用于学生管理数据库,数据库名为StudentInfo,包含学生的基本信息,课程信息和选课信息。
数据库StudentInfo包含下列3个表:(l)student:学生基本信息。
(2)course:课程信息表。
(3)sc:学生选课表。
各表的结构分别如表1、表2和表3所示。
sno注:sage界于10~30之间cno表3 学生选课表:scsnocno1. 数据库的建立:在程序菜单中选择Microsoft SQL Server,如图1所示:图1再选中企业管理器,如图2所示:图2点击企业管理器后,出现企业管理器的主界面,如图3所示:图3点击左边树状控制栏的+/-号可以打开和关闭SQL Server组中的本地服务项目,在选中数据库服务项目后,单击鼠标右键,出现数据库的菜单,如图4所示:图4点击新建数据库,出现新建数据库窗口,如图5所示:图5数据库属性对话框中有3个页面:常规页面、数据文件页面和事务日志页面。
数据文件页面和事务日志页面主要用来定义数据库的数据文件和日志文件的属性。
随后在常规页面中,输人数据库名称:StudentInfo。
点击数据文件选项卡,如图6所示:图6在数据文件选项卡中,你可以设定数据文件的名称,所在目录以及文件的大小等信息。
完成后点击事务日志选项卡,如图7所示:事务日志中,你可以设定日志文件的名称,所在目录以及文件的大小等信息。
文件属性栏设在页面的下部,它包括下列选项:1)文件自动增长复选框:选中后允许文件放满数据时自动增长。
2)文件增长单选框:设置允许文件自动增长时,每次文件增长的大小。
其中,选“按兆字节”项为设置文件增长为固定的大小,单位是MB;选“按百分比”项为文件按指定比例数增长,单位是%。
3)最大文件大小单选框:设置当允许文件扩展时,数据文件能够增长的最大值。
《大学计算机》Access 数据库中表的建立和维护实验报告
《大学计算机》Access 数据库中表的建立和维护实验报告一、实验目的1.掌握 Access 数据库的创建及其他简单操作2.掌握外部数据的导入方法3、掌握数据表字段属性的设置方法和应用4.掌握 SQL 中的建立数据表的命令二、实验环境要求1.Windows7 操作系统的计算机。
2.配备 Access2010三、实验任务描述实验项目一创建空数据库操作步骤: 1.创建一个名称为 BingGuan 的空数据库(1)启动 ACCESS2010,出现新建数据库画面,如图 5-1,选中“空数据库”图标,在“文件名”列表框中选择数据库存放位置,在此选择 F 盘中的 Hotel 文件夹,并在文件名文本框中输入数据库名称,在此输入文件名 BinbGuan.accdb,点击“创建”图标。
(2)这时开始创建空白数据库,进入创建数据库主界面,如图5-2 所示,自动创建了一个名称为表 1 的数据表。
(3)这时,光标在“添加新字段”列中的第一个空单元格中,可以开始输入数据。
是旅客入住登记表,其表名为 HotelRoom.(1)创建名称为 BinbGuan 的“空数据库”,打开后如图 5-2 所示的窗口。
默认有表 1 及其字段 ID。
(2)进入 Access 工作界面,在“所有 Access 对象”栏中出现默认表名“表 1”,将鼠图 5-2 创建表结构标箭头对准“表 1”二字按鼠标右键,点击“重命名”,将“表 1”更名为“HotelRoom”。
在表名 HotelRoom 上点右键,选择“设计视图”,出现如图 5-3 的画面,按表 5-1 所列,分别输入字段、字段类型和字段长度。
(3)“入住时间”在整个使用阶段不会出现重复,可以将其设计为主键。
将鼠标对准“入住时间”所在行,点右键,在“主键”前面会出现一把_____图样,即为主键。
如果要去除主键,仅需将钥匙图样去除即可。
(4)至此,表 HotelRoom 建立完成,可以向表中输入数据了。
实验二 SQL2005数据库、表及视图的创建
实验二SQL2005数据库、表及视图的创建实验平台:安装SQL2005数据库的PC实验目的:1.深入SQL2005中数据库的文件构成、数据表字段数据类型。
2.掌握SQL2005中数据库、数据表、视图的创建。
实验内容:1.创建数据库、分离、备份、附加与删除。
2.数据表的创建、修改、删除(包括完整性的实现、索引的创建)。
3. 对数据表中的数据进行插入数据,修改数据,删除数据操作。
4. 视图的创建、数据输入、与删除视图实验具体要求:参看SQL Server实验指导书完成下面实验【创建数据库】:1.交互式创建数据库jxsk1>启动SQL2005 Server Management Studio,登录到数据库服务器中2>在“对象资源管理器”中选中“数据库”,单击右键,选中“新建数据库(N)...”,在弹出的“新建数据库”窗口中的“选项页”中选择“常规”,在右边窗口中的“数据库名称”输入“jxsk”,点击“数据库文件”列表中的“路径”列的右侧按钮,将数据文件和日志文件的路径均改为“D:\DataBase”,如图:然后单击“确定”,即可完成数据库的创建。
3>查看和更改数据库属性:在“对象资源管理器”中选择“数据库”—>“jxsk”,右击选择“属性”,在“选项页”中选择“文件”即可看到数据库属性,单击“数据库文件”列表的“自动增长”的右边按钮,将选择按MB值增长,增长量设为5Mb。
如图:点击“确定”,在点击“确定”即可完成数据库的属性修改。
2.使用Transact-SQL指定参数创建数据库testbase11)创建数据库database11>打开并连接到数据库服务器2>单击工具栏的“创建查询”打开查询编辑器窗口,在查询编辑器窗口中输入下列T-SQL语句:Create DA TABASE testbase1ON(NAME=testbase_data,FILENAME='D:\DataBase\testbase_data.mdf')LOG ON(NAME=testbase_log,FILENAME='D:\DataBase\testbase_log.ldf')如图:然后单击菜单栏的运行SQL语句即可创建出t数据库testbase1,在“对象资源管理器中的数据库”子目录多增加了“estbase1”数据库。
数据库创建与维护实验
1.实验一数据库创建与维护实验1.1实验目的通过创建数据库、并进行相应的维护,了解并掌握Mysql数据库的创建和维护的不同方法和途径,并通过这一具体的数据库理解实际数据库所包含的各要素。
1.2实验内容1.数据库创建与维护(1)创建数据库表创建学生选课数据库中所包含的数据库表,数据库表结构如下:学生(学号,姓名,性别,年龄,系别,班级)课程(课程编号,课程名称,学分)选修(学号,课程编号,学生成绩)要求为各数据库表属性选择合适的数据类型。
列名、数据类型(长度列、精度、小数位数项)、是否允许空值等。
(2)查看和修改表结构。
选择一个数据库表,练习对其表结构进行相应的修改。
(3)练习用交互式的SQL语句分别完成以上操作。
(4)对学生数据库中的三张表分别插入数据;(5)对表中的数据进行修改;(6)对表中的数据进行删除操作2.(1)建立如下视图:学生选修课程信息视图,包括以下内容:学生学号、姓名、所在系、选修的课程编号、课程名称、成绩(2)修改以上视图,增加学生所在班级信息。
(3)对以上视图删除。
1.3实验要求1.数据库创建与维护实验则要求面向具体应用领域,利用SQL Server相关机制,创建并维护数据库系统,为后续各个实验提供前期准备2.要求学生根据以上要求确定实验步骤,独立完成以上实验内容。
并在安装和数据库运行后熟悉SQL SERVER 的各种运行管理。
3.实验完成后完成实验报告1.4实验环境Windows8 pc机Mysql配置的环境Mysql命令行工具Workbench可视化工具1.5实验步骤及结果分析1.5.1student数据库创建打开命令行工具,输入密码,用use语句使用相应数据。
Use student使用老师的给的数据库。
在workbench中我们可以看到创建数据库的代码:下面是输入的数据此处我们会发现乱码问题,老师给的代码中写的是Latin,我们改成utf-8,便解决了中文乱码问题。
创建数据库语句,create table +`数据库名`(`属性名` 属性类型约束)1.5.2数据库操作---属性查询查询表结构:即各个属性和属性的完整性约束等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北京邮电大学实验报告课程名称数据库系统原理实验名称数据库表/视图的创建与维护实验计算机学院网络工程11班薛玥指导教师吴起凡成绩2014-3-27实验目的1.掌握将E-R图转换为数据库逻辑模式(关系表)的方法。
2.通过进行数据库表的建立操作,熟悉并掌握在Microsoft SQL Server数据库中建立表的方法,理解关系数据库表的结构,巩固SQL标准中关于数据库表的建立语句。
3.通过对Microsoft SQL Server数据库中建立、维护视图的实验,熟悉Microsoft SQL Server数据库中建立和维护视图的方法,理解和掌握视图的概念。
4.掌握从Excel表向Microsoft SQL Server关系数据库导入数据的方法,利用实际数据建立GSM网络配置数据库。
·实验环境采用Microsfot SQL Server2005数据库管理系统作为实验平台;个人独立完成此实验。
·实验内容将本次试验大致分为一下几个内容:1.根据上次《GSM移动通信网络配置数据库》相关背景资料及上次试验对于GSM网络各个实体间的关系,将数据需求转化为E-R图;2.将E-R图转化为逻辑模式,在转化的时候要注意表结构及属性,以及一些primary key的选择,以及键之间的约束关系;3.接下来,将将逻辑模式转化为物理模式。
转化成物理模型的方式主要有以下三种,1)写好create table、create view等命令的SQL脚本,利用脚本文件一次性生成这些表和视图,然后在Microsoft SQL Server中打开SQL脚本文件并执行;2)把创建表和视图的脚本语句分成一条一条SQL语句执行;3)使用SQL Server所提供的功能,自动创建表和视图。
以上说的这三种方法,我都做了尝试,会在后面详细阐述;3.视图定义:1)创建单表上的视图:a.在表“小区基本信息”上创建“LAC号为14121的小区基本位置信息”视图CellInfo,属性包括(CellID、所属地区、LAC号、经度、纬度)。
b.在表“20个小区一周分钟级话务数据”上创建“全速率话务量平均值大于23的小区话务量数据信息”视图CellCallInfo,属性包括(CellID、平均半速率话务量率、平均拥塞率)。
2)创建多表上的视图:创建“MscID=5214的MSC管辖的BTS的基本信息,及其BTS对应的天线基本信息”视图ParMscInfo。
4.将老师所给的《最小数据支撑集》导入数据库;·实验过程1.首先,先要把老师所给的GSM网络相关文件看懂看明白,将各个实体间的关系抽象出来,转化成实体关系图。
可以这样理解:1)1个BSC可连接控制多达数十个甚至上百个BTS,每个BTS(以及其所对应的cell/sector)可以连接至1-3个BSC。
->BSC“控制”BTS,多对多,两端均为完全参与2)“1个MSC可以连接管理几个至数十个BSC,而每个BSC可以连接至1个MSC。
”->MSC”管理”BSC,一对多,两端均为完全参与。
3)“在一个BTS周围,能使移动台以不小于最小有效信号强度接收到来自BTS 的无线信号的所有地理位置点构成BTS覆盖范围或服务范围”,“1个MS可以位于1到6个BTS的覆盖范围内(当MS同时处于多于1个BTS的覆盖范围内时,MS 处于如图2所示的切换区域内),但任一时刻只能与其中的1个BTS建立有效的无线通信链路,此BTS对应的小区/扇区覆盖范围成为MS的服务小区。
”->①空闲状态,cell“覆盖”MS,多对多,MS完全参与,cell部分参与;②通话状态, cell“服务”MS,一对多,MS完全参与,cell部分参与.4)“在1个小区cell或扇区sector中,BTS与MS间通过空中(逻辑)无线信道(channel)进行话音或数据通信。
GSM是时分多址TDMA系统,其信道可分为逻辑信道和物理信道。
”->BTS“对应于”cell,一对一,两端均为完全参与。
5)“根据小区/扇区为全向还是定向小区,每个小区的BTS都有一幅全向或定向天线。
”->天线“配置给”Cell,一对一,天线部分参与,小区完全参与。
6)“地理位置上相邻、并且定义为邻区的2个小区之间有邻区关系”->邻区关系是一种非对称关系,多对多,两端均为完全参与。
7)->最小数据支撑集里的路测数据,“来自于”小区,且是多对一,小区部分参与,路测数据完全参与。
8)->分钟计划数据“描述”每个小区,话务数据与小区的关系为多对一,小区和话务量都是完全参与。
9)->频点“分配给”小区,多对多,频点部分参与,小区完全参与。
根据这些实体之间的联系,可以抽象出E-R图。
2.将E-R图转化成关系模式。
首先,我采用编写脚本来创建表的方式来得到各个表,SQL脚本如下:use GSMgo--BSCcreate table BSC(BscId int not null,BscCompany nvarchar(255)null,BscName nvarchar(255)null,Longitude float null,Latitude float null,MscId int null,primary key(BscId))--BTScreate table BTS(BtsName nvarchar(255)not null,Longitude float null,Latitude float null,Altitude float null,BtsCompany nvarchar(255)null,BtsPower float null,BscId int null,primary key(Btsname))--MSCcreate table MSC(MscId float not null,MscName nvarchar(255)null,MscCompany nvarchar(255)null,Msclongitude float null,Msclatitude float null,primary key(Mscid))--MScreate table MS(IMEI float not null,UserName nvarchar(255)null,MSISDN float null,MsCompany nvarchar(255)null,gsmMsSense float null,gsmMsHeight float null,gsmMsFout float null,MZONE int null,primary key(IMEI))--neighborcreate table neighbor(CellId int not null,AdjellId int not null,CellLac float null,Adjcelllac float null,primary key(CellId,AdjcellId))--roadcastcreate table roadcast(KeyNum float not null,CellID int not null,Latitude float null,Longitude float null,RxLev float null,primary key(KeyNum,CellID))--antennacreate table antenna(CellID int null,AntennaHeight int null,HalfPAngle int null,MaxATTenuation int null,Gain int null,AntTilt int null,Pt int null,MsPwt int null)--cell/sectorcreate table cell/sector(CellID int not null,Bts Name nvarchar(255)null,AreaName nvarchar(255)null,LAC int null,Longitude float null,Latitude float null,Direction int null,Radious int null,Bcch int null,primary key(cellid))--FREcreate table FRE(CellId int not null,Freq int not null,primary key(CellId,Freq))通过新建查询编写如上SQL脚本,通过上方工具栏,选择要在哪个数据库上运行这个SQL脚本,点击,选择后即可点击右侧的执行按钮来执行编写好的SQL脚本。
执行完成后,则可以再右侧的GSM数据库中的表文件中看到所建立的所有table。
可以选中任意一个建好的表,如选择abo.atenna,点击列,则可以看到刚刚创建好的包含在实体atenna中的各个属性。
这些表目前还是空表,没有导入任何数据。
建立表的方式还有很多,正如老师在实验要求中所说的那样,可以像上述依次完成建立,也可以一条一条执行SQL语句,当然也可以利用软件自带的功能,直接将表和表的数据导入数据库,这样做操作简便易于完成,但是要想将课上老师所讲的SQL语句得到应用,还是编写脚本这种方式更为合适贴切。
3.建好表后,就是要根据自己所用属性的需要,将老师所给的最小数据支撑集中的数据导入建好的表中。
这里我们需要上述图片的几个属性,按照下述方式导入数据(1)将excel中的每个表通过excel另存为.csv格式。
(2)将Excel格式的文件导入到Microsoft SQL Server数据库相应的表中。
按照上述方式即可将数据导入数据库,在这里不再赘述具体点哪儿了。
倒好数据的表,可以通过点击表->选择一个表abo.atenna->右键选择打开表,即可看到。
通过自己的摸索,我还找到了另外一种简便的方法来导入数据,但是没有什么技术含量,在以后的工作生活中可以用这种方式来导入数据。
这种方法描述为:在空的数据库上点右键,选择任务->导入数据,然后源文件就是老师所给的数据集,目的文件就是sql server,这样到数据方便快捷,但是,有的联系集的数据并不是现成的,所以无法直接导入修改。
4.建立视图视图的创建也是利用SQL脚本。
(1)创建单表上的视图:在表“小区基本信息”上创建“LAC号为14121的小区基本位置信息”视图CellInfo,属性包括(CellID、所属地区、LAC号、经度、纬度)。
由于在本数据库中,LAC的属性为integer,所以可以直接比较选择LAC=14121的,代码为:create view CellInfo asselect CellID,AreaName,Longitude,Latitude,LACfrom abo.[cell/sector]where LAC=14121或者直接在视图那里选择新建视图,在方块内输入代码:由于创建表中,小区信息导入的数据的LAC都为14119,而没有14121的对应元素,所以创建视图中选择出来的信息为空。