实验三 数据更新例
实验三添加修改和删除
任务一:
1.启动DBMS服务器,视情况决定是否附加实验用数据库。
2.利用对象资源管理器,对指定数据库中的表进行数据的添加、修改和删除。
尝试去做一些违反数据库定义中的约束的操作,分析反馈操作信息,并回答思考问题。
3.在查询编辑器中,利用INSERT、DELETE、UPDA TE语句在指定的数据库的相关表中进行如下数据的添加、修改和删除。
对操作中出现的问题进行分析,并加以解决。
在已经创建好的学生选课数据库中的各表中添加样例数据,并更新“学生—课程”数据库。
(1)向学生表S中插入一行数据。
(分析插入数据的学号与已有学号相同或不同时的反馈信息)。
学号相同时:
学号不同时:
(2)根据学生表和课程表生成一个“计算机”系学生的成绩临时表CGRADE,表中包括SN、CNO、GRADE三个属性。
(3)将王玲所学的高等数学成绩改为86.0.
(4)删除成绩低于所有课程平均成绩的选课元组。
(5)设置数据修改和删除的处理策略。
(要求选课表中有S04的选课信息)a.将学生表中学号为S04的学生学号修改为S28。
b.删除学生表中学号为S28的学生信息。
查看执行操作后表SC的变化情况或不能执行操作的反馈信息,并加以分析。
数据库原理实验报告(3)实验三数据表的创建与管理实验
数据库原理实验报告(3)实验三数据表的创建与管理实验南京晓庄学院《数据库原理与应⽤》课程实验报告实验三数据表的创建与管理实验所在院(系):数学与信息技术学院班级:学号::1.实验⽬的(1)理解SQL Server 2005常⽤数据类型和表结构的设计⽅法。
理解主键、外键含义,掌握建⽴各表相关属性间参照关系的⽅法。
(2)熟练掌握使⽤SQL Server Management Studio图形⼯具创建表,删除表,修改表结构,插⼊及更新数据的⽅法。
(3)熟练掌握使⽤Transact-SQL语句创建表,删除表,修改表结构,插⼊及更新数据的⽅法。
2.实验要求基本实验:(1)在实验⼆所创建的“TM”数据库中合理设计以下各表逻辑结构:学⽣信息(学号,,性别,籍贯,出⽣⽇期,民族,学院/系别号,班级号)课程信息(课程号,课程名称,课程所属模块,课程类别,学分,学时)学习信息(学号,课程号,考试成绩,平时成绩)院系信息(院系号,院系名称)要求确定各个字段的名称、类型、是否有默认值,是否主键等信息。
(2)依据你所设计的表结构,使⽤SQL Server Management Studio图形⼯具在“TM”数据库中创建学⽣信息表和课程信息表,并试验在图形界⾯中修改表结构,删除数据表,输⼊并更新数据的⽅法。
(3)依据你所设计表结构,使⽤Transact-SQL语句创建学习信息表和院系信息表,并试验使⽤T-SQL语句修改表结构,删除数据表,插⼊和更新数据的⽅法。
(4)找出已创建各表之间相关属性的参照关系,并在相关表中增加引⽤完整性约束。
(5)按要求完成实验报告。
扩展实验:(1)在“TM”数据库中补充设计以下各表结构:教师信息(教师号,,性别,出⽣⽇期,学历,学位,⼊职时间,职称,院系号)授课信息(教师号,课程号,学期)班级信息(班级号,班级名称,专业号)专业信息(专业号,专业名称,学制,学位)图书信息(图书号,书名,作者,,出版⽇期,册数,价格,分类)借书偏息(学号,图书号,借出时间,归还时间)奖励信息(学号,奖励类型,奖励⾦额)(2)设计并实现各表之间相关属性的参照关系。
数据更新与视图操作实验报告
where shopaddress='北京'
WITH CHECK OPTION
③基于多个基本表的视图创建。
例:创建北京地区所有商店的销售记录视图V3。
create view v3(shopno,prono,amount,shopaddress)
as
select sale.shopno,prono,amount,shopaddress
prono ='p01'
基于分组视图的查询。
例:查询平均销售量大于100的商店名和平均销售量。
select amountavg,shopname
from v5
where amountavg>100
(3)更新视图
①视图上插入数据。
例:向视图V1中插入新商店(s05,农工商,北京)的信息。
例:向视图V1中插入新商店(s06,家乐福,上海)的信息。
from shop,sale
where shopaddress='北京'and
shop.shopno=sale.shopno
④基于视图的视图创建。
例:创建北京地区、销售量大于100的销售记录视图V4。
create view v4
as
select shopno,prono,amount shopadress
2.修改数据
(1)修改一行数据
例:将商店s02的商店名改为红五星。
(2)修改多行数据
例:将所有商品的价格增加100元。
3.删除数据
(1)删除一行数据
例:删除s05商店的基本信息。
(2)删除多行数据
例:删除苏果商店的所有销售记录。
数据库实验
实验一:建立数据库及基本表实验报告一、实验目的1、了解SQL Server数据库的逻辑结构和物理结构;2、了解SQL Server的基本数据类型;3、学会在企业管理器中创建数据库和表;4、使用SQL查询分析器用CREATE、DROP、ALTER语句创建和删除数据库,创建、删除、更新基本表。
二、实验内容1、创建数据库和查看数据库属性。
2、创建表。
3、查看和修改表结构。
4、熟悉企业管理器和查询分析器工具的使用方法三、实验步骤1、在企业管理器中创建数据库和数据表。
(1)使用企业管理器建立销售数据库,数据库名为sales,初始大小为10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。
数据库的逻辑文件名和物理文件名均采用默认值。
详细步骤:1启动sql server企业管理器,展开服务器,单击“数据库”,选择“操作”菜单中的“新建数据库”。
2单击数据库属性窗口的“常规”选项卡,在“名称”文本框中输入数据库的名称“sales”。
3单击“数据文件”选项卡,此处可以修改数据文件存储的路径。
(将路径修改为:“E:\”)。
4将文件初始大小改为10MB,最大改为50MB,选中“文件自动增长”,增长方式是按5%比例增长。
5单击“事务日志”,修改路径,修改初始大小为2MB,最大改为5MB,选中“文件自动增长”,按1MB增长。
6单击“确定”,完成数据库的创建。
(2)在企业管理器中查看图书管理数据库的属性,并进行修改,使之符合要求。
(3)通过企业管理器,在建好了销售数据库sales中建立职工(employee)、物资(goods)和销售(sell)3个表,其结构为:职工(编号,姓名,性别,部门,电话,地址);物资(商品编号,商品名称,生产厂家,进货价,零售价,数量,进货时间);销售(销售编号,商品编号,数量,售出时间,售货员工编号);创建上述三个表的步骤:1展开服务器,数据库,展开建立数据库所在的数据库。
实验_3数据流图
实验三学习在Visio中创建数据流图实验目的:学习在Visio中创建数据流图所需的模板和创建数据流图的基本过程,掌握使用数据流图表示功能模型的方法。
实验要求:掌握根据具体描述分析出数据的源点或终点、变换数据的处理、数据存储和数据流四种基本成分,创建数据流图模具将数据流图所需的各种图形包含在其中,使用自己创建的模板绘制数据流图。
实验条件:windowsXP、Visio2003实验内容及步骤:数据流图描绘数据在软件系统内从输入移动到输出的过程中所经受的变换。
通常用数据流图建立软件系统的功能模型。
数据流是系统逻辑功能的图形表示,图中没有任何具体的物理部件,仅仅描绘数据在软件中流动和被处理的逻辑过程,不懂计算机技术的人也容易理解它,因此是分析员与用户之间极好的通信工具。
数据流图只有四种基本符号:正方形(或立方体)表示数据的源点或终点;圆角矩形(或圆形)代表变换数据的处理;开口矩形(或两条平行横线)代表数据存储;箭头线表示数据流,即特定数据的流动方向。
数据存储和数据流都是数据,仅仅所处的状态不同。
数据存储是处于静止状态的数据,数据流是处于运动状态的数据。
在数据流图中应该描绘所有可能的数据流向,而不应该描绘出现某个数据流的条件。
千万不要试图在数据流图中表示分支条件或循环,这样做将造成混乱,画不出正确的数据流图。
通常在数据流图中忽略出错处理,也不包含诸如打开或关闭文件之类的内务处理。
画数据流图的要点是,描绘“做什么”而不考虑“怎样做”。
画数据流图的基本方法是,从基本系统模型出发,自顶向下从抽象到具体分层次地画。
一、创建数据流图模板:数据流图模具中应该包括:正方形(或立方体)、圆角矩形(或圆形)、;开口矩形(或两条平行横线)、箭头线等基本形状。
1.打开数据流模型图模板:Gane-Sarson模具中的基本形状都可用于数据流图的绘制。
(1)在“文件”菜单上,指向“新建”,然后单击“选择绘图类型”。
(2)在“类别”下,单击“软件”,然后在“模板”下,单击“数据流模型图”。
实验三 视图,索引及数据更新
实验三视图、索引及数据更新一、实验目的:熟练掌握索引的建立与删除的方法,熟练掌握SQL的应用,熟练掌握数据插入、修改和删除的使用,为后继学习作准备。
二、实验属性验证性三、实验要求1.预习教材第三章,熟悉SQL语句。
2.熟悉SQL Server环境。
3掌握建立索引的两种方法,即在基本表中建立和用命令方式建立。
4.掌握删除索引的方法。
5.掌握sql视图建立、修改和删除;6.掌握sql视图查询。
7.掌握sql数据插入、修改和删除语句的一般格式及使用方法。
四、实验原理SQL语言应用。
五、实验步骤(1) 启动SQL查询分析器;(2) 选择SQL SERVER后,按确认;(3) 选择数据库;(4) 验证如下例子:1 建立索引例3.1为学生选课数据库中的Students,Courses,Reports三个表建立索引。
其中Students表按Sno(学号)升序建唯一索引,Courses表按Cno(课程号)升序建唯一索引,Reports表按Sno(学号)升序和Cno(课程号)号降序建唯一索引。
例3.2 在基本表Students的Sname(姓名)和Sno(学号)列上建立一个聚簇索引,而且Students中的物理记录将按照Sname值和Sno值的升序存放。
2 删除索引例3.3删除基本表Reports上的索引。
3 建立视图例 3.4建立数学系学生的视图,并要求进行修改和插入操作时仍需保证该视图只有数学系的学生,视图的属性名为Sno,Sname,Sage,Sdept。
例3.5建立学生的学号(Sno)、姓名(Sname)、选修课程名(Cname)及成绩(Grade)的视图。
例3.6定义一个反映学生出生年份的视图。
4 删除视图例3.7删除例3.6建立的视图。
5 查询视图例3.8在数学系的学生视图中找出年龄(Sage)小于20岁的学生姓名(Sname)和年龄(Sage)。
例 3.9在例 3.5建立的视图中查询成绩在85分以上的学生学号(Sno)、姓名(Sname)和课程名称(Cname)。
实验三 工资核算
实验三工资核算工资是企业支付给劳动者的报酬,工资核算即根据不同的工资发放标准对员工工资进行核算。
工资管理与核算是企业管理的一个重要组成部分。
工资核算与发放是企业人力资源中薪酬管理的一个重要组成部分。
因此,根据工资发放标准的不同,工资核算以及代扣个人所得税、工资费用分配等,都需要花费大量的时间和人力。
实验目的²掌握工资核算的操作流程²了解费用分配的设置实验要求以景晓青的身份登录系统,按照下述资料在KIS专业版系统中进行工资管理系统的操作。
1.在工资管理中新建工资类别,币别为人民币。
从总账模块引入所有职员和部门。
2.设置工资项目、工资计算公式、所得税计算公式、录入工资数据。
3.查询工资条及工资发放表。
实验资料该公司的员工名单如下:编号姓名性别类别部门职务基本工资001 朱腾飞男管理人员行政部主任3,500.00002 李静静女管理人员行政部职员2,500.00003 李毅然女管理人员行政部职员2,500.00004 张逸超男管理人员财务部主任3,500.00005 景晓青女管理人员财务部职员2,500.00006 窦晓璐女管理人员财务部职员2,500.00007 曾丽丽女管理人员财务部职员2,500.00008 赖流甲男管理人员财务部职员2,500.00009 荆路希男销售人员供销部主任3,500.00010 刘培阳女销售人员供销部职员3,000.00011 董沙沙女销售人员供销部职员3,000.00012 杜大龙男销售人员供销部职员3,000.00013 贺彩虹女销售人员供销部职员3,000.00014 李毅琨男生产人员生产部主任3,500.00015 田晟茂男生产人员生产部职员3,000.00016 王顺冉男生产人员生产部职员3,000.00017 张夏旗男生产人员生产部职员3,000.00018 袁世冲男生产人员生产部职员3,000.00019 杨晓冬男生产人员生产部职员3,000.00020 杨少波男生产人员生产部职员3,000.00021 闫笑晗男生产人员生产部职员3,000.00022 刘梦茜女生产人员生产部职员3,000.00023 刘志彬男生产人员生产部职员3,000.00024 刘铁茅男生产人员生产部职员3,000.00025 刘崇周男生产人员生产部职员3,000.00026 邹新华男生产人员生产部职员3,000.00027 郝晨露女生产管理生产部职员2,500.00028 王园园女生产管理生产部职员2,500.001.岗位津贴主任的岗位津贴为:500元;管理人员的岗位津贴为:300元;销售人员的岗位津贴为:350元;生产人员的岗位津贴为:35 0元;生产管理的岗位津贴为:300元。
SQLITEUPDATE语句
sqlite3实验指导书——2014版本实验3 sqlite中的高级sql实验目的:1.熟练掌握在数据库中插入、修改和删除数据的操作方法,加深对标准sql更新语句的理解。
2.了解sqlite中用约束来维护数据完整性的机制。
掌握在sqlite中如何创建、使用及删除约束的方法。
3.掌握在sqlite中创建、删除视图的sql语句的用法,加深理解视图的用途。
4.掌握在sqlite中创建、删除索引的sql语句,加深理解索引的用途。
5.掌握在sqlite中创建、删除触发器的sql语句的用法,加深理解触发器的用途。
6.掌握在sqlite中创建事务的sql语句的用法,加深理解事务的各种冲突解决方案。
实验内容:1.基于实验一创建的教学管理jxgl数据库,参考教材数据更新的sqlite操作实例,实现数据的插入、修改和删除操作。
2.基于实验一创建的供应系统gyxt数据库,实现数据的插入、修改和删除操作。
3.基于实验一创建的教学管理jxgl数据库,实现约束的创建、查看和删除操作。
4.创建人事关系rsgx数据库及其中的职工数据表和部门数据表,并实现完整性约束条件的定义。
5.基于实验一创建的教学管理jxgl数据库及供应系统gyxt数据库,参考教材视图的sql操作实例,实现视图的创建、删除、查询操作。
6.基于jxgl数据库,学习如何创建索引。
7.基于jxgl数据库,创建触发器,体会触发器的作用。
8.基于jxgl数据库,参考教材上事务的应用实例,掌握事务的创建及各种冲突解决方案的用法。
实验步骤:1.在教学管理jxgl数据库中进行如下操作:(1) 将一个新学生记录(学号:200215126;姓名:陈冬;性别:男;所在系:is;年龄:18)插入student表中。
insert into student values(200215126,陈冬,男,18,is);(2) 数据的插入操作:插入一条选课记录,学号为200215126的学生选修了1号课程。
3.使用SQL语句进行数据更新操作
实验三使用SQL语句进行数据更新操作●目标✓完成本实验,将能够:使用SQL语句对数据表进行更新,完成数据的插入、更新以及删除操作。
●实验预估时间:40 min练习 1 使用SQL 语句更新数据表在本练习中,将使用SQL语句完成对数据表的更新操作,并使用查询语句检测更新后的结果。
实验步骤:1)启动SQL Server20052)登录数据库服务器3)完成数据库和数据表的构建工作:打开并运行在服务器上共享的数据库构建文件xsgl.sql文件,具体方法为:a)将服务器上共享的xsgl.sql文件复制到本地磁盘b)双击本地磁盘中的xsgl.sql文件,并在弹出的“连接服务器”对话框中点击“连接”按钮。
c)按键盘上的“F5”键运行xsgl.sql文件中的数据库和数据表的SQL构建语句。
4)使用Select语句检索xs表中的所有学生的详细信息。
5)使用Update语句将xs表中所有专业为“信息管理”的学生总学分增加5个。
6)使用Select语句再次对xs表中的所有学生的详细信息进行检索,检测数据是否按照要表更新。
7)使用Delete语句删除xs表中学号为“2006030101”的学生记录。
8)再次使用Select语句检测相应的学生记录是否被删除。
注:数据SQL语句格式:数据更新:UPDA TE <表名>SET <列名1>=<值1>[, <列名2>=<值2>, <>=<>, …. <列名N>=<值N>]WHERE <更新条件>数据查询:SELECT [ALL|DISTINCT] <目标列表达式> [,<目标列表达式>] …FROM <表名或视图名>[,<表名或视图名> ] …[ WHERE <条件表达式> ]练习 2 使用SQL 语句更新数据表在本练习中,将使用SQL语句完成对数据表查询操作,掌握查询语句的使用方法。
数据库原理实验指导书
数据库原理实验指导书实验名称:试验一:SQL语言嵌套查询和数据更新操作所属课程:数据库原理实验类型:设计型实验实验类别:基础□专业基础√专业□实验学时:4学时一、实验目的1.熟悉和掌握对数据表中数据的查询操作和SQL命令的使用,学会灵活熟练的使用SQL 语句的各种形式;2.加深理解关系运算的各种操作(尤其的关系的选择,投影,连接和除运算);3.熟悉和掌握数据表中数据的插入、修改、删除操作和命令的使用;4.加深理解表的定义对数据更新的作用二、预习与参考1.熟悉SQL SERVER 工作环境;2.连接到学生-课程数据库3.复习对表中数据查询的SQL语言命令;4.复习对表中数据的插入、修改和删除的SQL语言命令。
三、实验要求(设计要求)针对教材例子,通过SQL SERVER企业管理器和查询分析器两种模式,熟悉数据嵌套查询、更新操作。
四、实验方法及步骤1.在表S、C、SC上进行简单查询;2.在表S、C、SC上进行连接查询;3.在表S、C、SC上进行嵌套查询;4.使用聚合函数的查询;5.对数据的分组查询;6.对数据的排序查询。
7.将数据插入当前数据库的表S、C、SC中;A:用SQL命令形式B:用SQL SERVER提供的企业管理器以交互方式进行8.将以上插入的数据分别以.SQL文件和.txt文件的形式保存在磁盘上;9.修改表S、C、SC中的数据;A:用SQL命令形式B:用SQL SERVER提供的企业管理器以交互方式进行10.删除表S、C、SC中的数据。
A:用SQL命令形式B:用SQL SERVER提供的企业管理器以交互方式进行五、实验内容在表S,C,SC上完成以下操作:1.查询学生的基本信息;2.查询“CS”系学生的基本信息;3.查询“CS”系学生年龄不在19到21之间的学生的学号、姓名;4.找出最大年龄;5.找出“CS”系年龄最大的学生,显示其学号、姓名;6.找出各系年龄最大的学生,显示其学号、姓名;7.统计“CS”系学生的人数;8.统计各系学生的人数,结果按升序排列;9.按系统计各系学生的平均年龄,结果按降序排列;10.查询每门课程的课程名;11.查询无先修课的课程的课程名和学时数;12.统计无先修课的课程的学时总数;13.统计每位学生选修课程的门数、学分及其平均成绩;14.统计选修每门课程的学生人数及各门课程的平均成绩;15.找出平均成绩在85分以上的学生,结果按系分组,并按平均成绩的升序排列;16.查询选修了“1”或“2”号课程的学生学号和姓名;17.查询选修了“1”和“2”号课程的学生学号和姓名;18.查询选修了课程名为“数据库系统”且成绩在60分以下的学生的学号、姓名和成绩;19.查询每位学生选修了课程的学生信息(显示:学号,姓名,课程号,课程名,成绩);20.查询没有选修课程的学生的基本信息;21.查询选修了3门以上课程的学生学号;22.查询选修课程成绩至少有一门在80分以上的学生学号;23.查询选修课程成绩均在80分以上的学生学号;24.查询选修课程平均成绩在80分以上的学生学号;25.选做:针对SPJ数据库中的四个表S,P,J,SPJ,完成教材P74-75--习题5中的查询及教材P127--习题5中的查询。
实验3 总体设计和数据库设计
实验报告课程名称_软件工程导论__________学院____计算机工程学院_________班级14软件1班学号2014144141姓名秦川2017年1月11日批阅教师时间实验成绩课程名称软件工程学号2014144141姓名秦川实验日期实验名称实验3总体设计和数据库设计实验目的:1、掌握总体设计和数据库设计2、掌握总体设计方法和数据库设计方法,掌握界面设计的绘制。
实验内容:任务一绘制工资支付系统的功能结构图和数据库任务二绘制功能结构图和数据库案例一:总务办公管理系统案例二:火车票预订系统实验原理:在系统设计阶段,要设计软件体系结构,即是确定软件系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。
同时把模块组织成良好的层次系统:顶层模块通过调用它的下层模块来实现程序的完整功能,顶层模块下面的每个模块再调用更下层的模块从而完成程序的一个子功能,最下层的模块完成最具体的功能。
通过对数据流图边界的划分,变换成系统结构图,得到功能结构图。
实验过程与结果:任务一绘制工资支付系统的功能结构图和数据库 绘制工资支付系统的功能结构图1.运行Microsoft Office Visio2.选择“流程图”中的“基本流程图”模板如上图所示,此工资支付系统功能在于计算教职工工资,并输出相应的表单,在教职工输入课时表、任务表等数据时,系统可以计算出其应得的工资,甚至有具体的工资明细表。
绘制工资支付系统的数据库模型图3.用鼠标选拉图标进行绘图(1)绘制实体(表)外键设置:(1)左侧的“实体关系”中选择“关系”手动到图片。
(2)将“关系”箭头头部拖动到主表的中心直到主表边框呈现红色表示成功设置主表。
(3)将“关系”箭头尾部拖动到子表的中心直到子表边框呈现红色表示成功设置子表。
(4)点击“关系”箭头,在下面的“定义”--》父、子中选择要关联的列。
实验小结本次试验与上俩次实验同属于第1章:传统的结构化分析与设计,但我个人感觉,难度不及第二次实验,第一次是流程图,这是以往学过的内容,所以简单,而这次,应该是个人经验的丰富吧,首先对实验三个系统熟悉了,不用再对系统进行详细的分析了,另外,这次实验涉及数据库,在大二时,我们就系统的学习这门课程,故外键、主键、数据表的操作还是较为熟悉的。
《数据库原理》实验指导书--最新版
实验一实验环境熟悉与数据库(表)的建立实验目的熟悉实验的环境,掌握数据库、数据表的建立方法。
实验内容1、熟悉SQL的使用环境进入SQL环境(企业管理管理器、查询分析器)。
2、建立学生管理系统所需的数据库、数据表一个数据库,三张数据表。
实验环境1、硬件PC机,具有网络功能。
2、软件OS:windows 2000 professional;DBMS: SQL Server 2000.实验过程一、SQL server 2000环境1、系统的安装系统的安装过程比较简单,给学生演示一下。
2、进入查询分析器开始→程序→Microsoft SQL Server→查询分析器, 如下图所示:图1-1查询分析器的界面如图1-2所示:图1-2在文本框输入命令即可。
举例:计算圆面积的SQL程序的输入与运行结果界面(图1-3)。
图1-33、企业管理器的进入开始→程序→Microsoft SQL Server→企业管理器, 如下图所示:图1-4企业管理器的界面如图1-5:图1-5二、建立数据库与数据表1、建立学生管理数据库用SQL语句(生成的主文件名为: XSGL.MDF)语句为:CREATE DATABASE XSGL2、建立学生管理系统的数据表(共3个)使用SQL语句建立如下三个数据表(表结构见课本P92):学生表: Student.DBF(选本班10个同学作为10条记录)CREATE TABLE Student (Sno CHAR(9) PRIMARY KEY, Sname CHAR(20)UNIQUE, Ssex CHAR(2),Sage SMALLINT,Sdept CHAR(20));INSERT INTO Student ( Sno, Sname, Ssex, Sdept, Sage) V ALUES ('200215128','陈东','男','IS',18);建立表结构的语句见课本p85(P88—P89),记录的输入用插入命令INSERT, 详见课本P115。
实验训练3数据增删改操作
实验训练3 数据增删改操作一、实验内容与目的1.使用SQL语言完成数据定义、数据查询、更新,删除。
2.利用SQL语言提供的INSERT语句、UPDATE语句和DELETE语句对所创建的表进行操作;二、实验方法、步骤1.运行数据库SQL sever20082.新建数据库,并且创建新的表3.利用相关语句进行数据查询,更新,删除,修改三、实验过程原始记录1)创建供应商表汽车配件表Autoparts,由以下属性组成:零件代码PNO(CHAR型),零件名PNAME(CHAR型),颜色COLOR (CHAR型),价格Money (INT型)CREATE TABLE Autoparts(PNO CHAR(3),PNAME CHAR(10),COLOR CHAR(4),Money INT);2)创建供应商表汽车配件表category,由以下属性组成:轮胎Tires(CHAR型),灯Lights(int型)。
CREATE TABLE category(Tires CHAR(20),Lights CHAR(10));3)创建用户表Client,由以下属性组成:姓名NAME(CHAR型),TEL (int型)。
CREATE TABLE Client(NAME CHAR(20),TEL INT(10));4)创建用户类别表Clientkind,由以下属性组成:普通Normal(CHAR 型),贵宾VIP(CHAR型)。
CREATE TABLE Clientkind(Normal CHAR(20),VIP CHAR(20));5)创建购物车表shoppingcart,由以下属性组成:名称SHOPNAME (CHAR型),Money(int型)CREATE TABLE shoppingcart(SHOPNAME CHAR(20),Money INT(10));6)创建订单表Order,由以下属性组成:订单号Order_ID(INT型),Money(INT型)CREATE TABLE Order(Order_ID INT(50),Money INT(10));7)创建订单明细表order_has_Autoparts,由以下属性组成:配件名称SHOPNAME(CHAR型),价格Money(INT型),姓名NAME(CHAR 型),联系电话TEL (INT型),地址Address(CHAR型)CREATE TABLE order_has_Autoparts(SHOPNAME CHAR(50),NAME CHAR(50),TEL INT(20),Address CHAR(50),Money INT(10));8)创建评论表Comment,由以下属性组成:订单号Order_ID(INT 型),分数Fractions(INT型), 内容Content (CHAR型),姓名NAME(CHAR 型),联系电话TEL (INT型),地址Address(CHAR型)CREATE TABLE Comment(Order_ID INT(50),Fractions INT(10)Content CHAR(500),NAME CHAR(50),TEL INT(20),Address CHAR(50));二)数据操作1..插入数据(以Autoparts表为例,其他表同理)1)向Autoparts表插入下列数据:P1,螺母,红,12P2,螺栓,绿,17P3,螺丝刀,蓝,14P4,螺丝刀,红,14P5,凸轮,蓝,40P6,齿轮,红,30 INSERT INTO Autoparts VALUES (‘P1’,’螺母’,’红’,’12’);INSERT INTO Autoparts VALUES (‘P2’,’螺栓’,’绿’,’17’);INSERT INTO Autoparts VALUES (‘P3’,’螺丝刀’,’蓝’,’14’);INSERT INTO Autoparts VALUES (‘P4’,’螺丝刀’,’红’,’14’);INSERT INTO Autoparts VALUES (‘P5’,’凸轮’,’蓝’,’40’);INSERT INTO Autoparts VALUES (‘P6’,’齿轮’,’红’,’30’);2)修改数据:将全部红色零件的颜色改成蓝色。
数据库系统原理及应用答案.
数据库系统原理及应用实验指导书(本科)福建工程学院计算机与信息科学系目录实验一数据定义语言 (2)实验二SQL Sever中的单表查询 (5)实验三SQL Serve中的连接查询 (8)实验四SQL Serve的数据更新、视图 (11)实验五数据控制(完整性与安全性) (16)实验六语法元素与流程控制 (19)实验七存储过程与用户自定义函数 (23)实验八触发器 (27)实验一数据定义语言一、实验目的1.熟悉SQL Server2000/2005查询分析器。
2.掌握SQL语言的DDL语言,在SQL Server2000/2005环境下采用Transact-SQL实现表的定义、删除与修改,掌握索引的建立与删除方法。
3.掌握SQL Server2000/2005实现完整性的六种约束。
二、实验内容1.启动SQL Server2000/2005查询分析器,并连接服务器。
2.创建数据库: (请先在D盘下创建DB文件夹)1)在SQL Server2000中建立一个StuDB数据库:有一个数据文件:逻辑名为StuData,文件名为“d:\db\StuDat.mdf”,文件初始大小为5MB,文件的最大大小不受限制,文件的增长率为2MB;有一个日志文件,逻辑名为StuLog,文件名为“d:\db\StuLog.ldf”,文件初始大小为5MB,文件的最大大小为10MB,文件的增长率为10%2)刷新管理器查看是否创建成功,右击StuDB查看它的属性。
3.设置StuDB为当前数据库。
4.在StuDB数据库中作如下操作:设有如下关系表S:S(CLASS,SNO, NAME, SEX, AGE),其中:CLASS为班号,char(5) ;SNO为座号,char(2);NAME为姓名,char(10),设姓名的取值唯一;SEX为性别,char(2) ;AGE为年龄,int,表中主码为班号+座号。
写出实现下列功能的SQL语句。
数据库实验3
宁波工程学院数据库理论与技术课程实验报告学院:电子与信息工程学院专业:计算机科学与技术年级:实验时间:组名:组长:组员姓名:指导教师签字:成绩:实验三、SQL-数据查询语言一、实验目的和要求1、实验目的:深入理解连接查询和嵌套查询的语句格式、执行过程,掌握它们的使用方法;理解数据更新语言INSERT、UPDATE、DELETE语句的格式和作用,掌握它们的使用方法和应用范围;理解视图的概念,掌握其定义方法和应用方法。
2、实验要求:在每次实验前,学生必须根据实验指导书设计出实验方案(程序和实验步骤);在实验过程中要求独立进行程序调试和排错,学会使用在线帮助来解决实验中遇到的问题,同时运用理论的知识来分析问题和解决问题,记录下实验过程和结果。
上机结束后写出实验报告,并对实验过程进行分析和总结。
二、实验内容与步骤1、在SQL SERVER 2005上附加数据库jxgl和ReadBook。
2、在jxgl中完成下列查询jxgl数据库中表及表中字段说明:Students(sno, sname,class,ssex,bday,bplace,mgrade,photo,sfzh,zxf)该表是学生基本信息表其中:sno-学号,sname-姓名,class-班级,ssex-性别,bday-出生日期,bplace-籍贯,mgrade-入学成绩,photo-照片,sfzh-身份证号码,zxf-总学分Course(cno,cname,cpno,credit)该表是课程情况表其中:cno-课程号,cname-课程名称,cpno-先修课程号,credit—学分SC(term,sno,cno,grade,point)该表是学生选课成绩表其中:term-学期,sno-学号,cno-课程号,grade-成绩,point-绩点TC(term,class,cno,tno,period)该表是教师上课情况表其中:list—序号,term-学期;class-班级;cno-课程号;tno-教师编号;period-学时Teachers (tno,tname,ps,wday,dept,pay,marry,resume)该表是教师基本情况表:其中t no-教师编号;tname-教师姓名;ps-职称;wday-入校日期;dept-系别;pay-工资;marry-婚否;resume-简历(1)查询选修课程学生的学号、姓名、所选课程号、课程名称以及所取得的成绩(2)查询每一门课程及其先修课程,查询结果中显示课程号、课程名和先修课程名(3)查询和“刘涛”在一个班级的学生的信息思考:该查询可用几种方法实现?(4)查询选修了…计算机基础‟课的学生的学号、姓名(分别用连接查询和嵌套查询的方法实现)(5)查询没有选修课程的学生的信息(6)查询其他班中比“03计算应用1”所有学生入学成绩高的学生的姓名和入学成绩(用两种方法实现)(7)查询每个学生超过该门课程平均成绩的学号(8)查询至少选修了“0311102”学生所选全部课程的学生的学号(9)查询既选修了“计算机基础”又选修了“C语言基础”的学生的学号3、在jxgl中完成下列数据更新(1)向course表添加一个新的元组。
实验三数据表的创建与管理
实验三数据表的创建与管理一、实验目的要求学生熟练掌握SQLserver Management Studio的使用和利用T-SQL语句进行数据表的创建和删除,并对数据表和表中数据进行有效的管理.二、实验内容分别使用SQL Server Management Studio和T—SQL语句创建和删除数据表,修改表结构,输入数据、更新数据.三、实验指导1。
数据表定义实验3.1在“JXGL”数据库中,使用SQL Server Management Studio建立S、C和SC三个表,其结构如表表1。
3.1 学生表S结构列名描述数据类型允许空值说明sno学号char(8) NO 主键sname 姓名char(8)NOage 年龄SmallintYESsex性别char(2) YESsdept 所在系Varchar(50)YES表1.3。
2 课程表C结构列描述数据类型允许空值说明cno 课程号char(4)NO 主键cname 课程名char(20)NOcredit 学分Float YESpcno先修课char(4)YESdescribe 课程描述varchar(10YES表1.3.3 选课表SC结构列描述数据类型允许空值说明sno 学号char(8)NO主键(同时都是外键) cno课程号char(4) NOgrade成绩Float YES具体步骤如下:(1)在SQL Server Management Studio的对象管理器中,单击数据库前面的“+”号,选择“表”并击右键,在弹出的快捷菜单中选择“新建表”菜单项,则进入设计表字段对话框,如图图1。
3。
1设计字段对话框(2) 在设计表字段对话框中,共有三列参数:列名,数据类型,允许Null值。
“列名”就是数据库表的字段名,而“数据类型”是字段值的类型即整型、字符型、日期时间型等类型,“允许Null值”是用来设置该字段中的值能不能为空。
“列属性”显示在表设计器的底部窗格中。
数据库实验1-7
1《实验一 认识DBMS 》在SQL Server 2005中完成以下操作:(1) 建立SC 数据库,数据库命名:SC_姓名拼音+学号后三位,如SC_xiebing131;(2) 在其中建立Student 表、Course 表和SC 表,表结构如下,自己选择各属性的数据类型;学生关系Student(Sno ,Sname ,Ssex ,Sage ,Sdept)其中Sno 为主码,并且Sname 取值也唯一 课程关系Course(Cno ,Cname ,Cpno ,Ccredit)其中Cno 为主码,并且Cname 取值也唯一选修关系SC(Sno ,Cno ,Grade) 其中Sno 和Cno 不能为空,(Sno, Cno)为主码(3) 参照教材在各表中输入一定的记录,在student 表中输入一条自己的记录;(4) 进行表结构的修改和记录的修改、删除操作;(5) 验证教材P45基本关系具有的6个性质;(6) 分离数据库,保存数据库文件,以后上机要带上。
《实验二数据定义》实验内容:(1) 数据库的定义与删除(2)基本表的创建、修改及删除;(3) 索引的创建和删除;(4) 使用SQL 对数据进行完整性控制(实体完整性、参照完整性);(一)使用命令行方式建立SPJ 数据库(1)用SQL 语言建立SPJ 数据库,数据库命名:SPJ-姓名拼音+学号后三位,如SPJ-liyan112;(2)用SQL 语言在其中建立S 表、P 表、J 表和SPJ 表(要求进行完整性定义),表结构如下;厂家 S (SNO ,SNAME ,STA TUS ,CITY ),其中STA TUS (状态)为整型,其他均为字符型产品 P (PNO ,PNAME ,COLOR ,WEIGHT ),其中WEIGHT (重量)为浮点型,其他均为字符型工程 J (JNO ,JNAME ,CITY ),其中各属性均为字符型供应 SPJ (SNO ,PNO ,JNO ,QTY ),其中QTY (供应量)为整型,其他均为字符型建立数据表的语法格式CREA TE TABLE <表名>(<列名><数据类型>[<列级完整性约束条件> ] [,<列名><数据类型>[<列级完整性约束条件>]] …[,<表级完整性约束条件> ] );(3) 参照教材用SQL 语言分别在4个数据表中输入一定的记录;插入数据的语法格式:INSERTINTO <表名> [(<属性列1>[,<属性列2 >…)]V ALUES (<常量1> [,<常量2>] … )(4) 保存SQL 文件,文件名:SPJ-姓名拼音+学号后三位.sql ,如SPJ-xukai012.sql(二)使用命令行方式建立学生课程数据库(1) 用SQL 语言建立学生课程数据库,数据库命名:SC_学号后四位及姓名,如SC_3112liyan ;(2) 用SQL 语言在学生课程数据库中建立3个表,要求进行完整性定义;学生关系Student(Sno ,Sname ,Ssex ,Sage ,Sdept)其中Sno 不能为空,值是唯一的,并且Sname 取值也唯一,Sage 自定义约束“大于16” 课程关系Course(Cno ,Cname ,Cpno ,Ccredit)其中Cno 不能为空,值是唯一的,并且Cname 取值也唯一教师关系Teacher(Tno ,Tname ,Department ,Email ,Salary) 其中Tno 不能为空,值是唯一的选修关系SC(Sno ,Cno ,Grade) 其中Sno 和Cno 不能为空,(Sno, Cno)为主码,Grade 的数据类型为int(3) 修改数据表:✓ 将SC 表中Grade 的数据类型改为f loat ;✓ 在Student 表中增加一个属性Scome 记录学生的入学时间,其数据类型为DATETIME ;✓ 删除Student 表中新增加Scome 属性;✓ 删除表Teacher 表中的Email 属性;✓ 删除Student 表中对Sname 属性创建的Unique 约束。
实验三 索引和视图
实验三索引和视图一、实验目的1.掌握利用SSMS和T—SQL语句创建和删除索引的两种方法。
2.掌握利用SSMS和T—SQL语句创建、查询、更新及删除视图的方法。
ssex char(3)constraint ssex_ch check (ssex in('男','女')),sage int not null constraint sage_ch check (sage between 15 and 30),sdept char(10))values('C02','数据结构','C05',2) insert into coursevalues('C03','数据库','C02',2) insert into coursevalues('C04','DB_设计','C03',3)insert into coursevalues('C05','C++',null,3)insert into coursevalues('C06','网络原理','C07',3)create table sc(sno char(5)not null,cno char(5)not null,grade int constraint grade_ch check(grade between 0 and 100),primary key(sno,cno),constraint fk_sno foreign key (sno)references student(sno),constraint fk_cno foreign key (cno)references course(cno))insert into scvalues('S01','C01',92)insert into scvalues('S01','C03',84)insert into scvalues('S02','C01',90)insert into scvalues('S02','C02',94)insert into scvalues('S02','C03',82)insert into scvalues('S03','C01',72)insert into scvalues('S03','C02',90)insert into scvalues('S04','C03',75)2.索引的建立、删除①用SSMS的方式为Student表按Sno(学号)升序建唯一索引②用T—SQL语句为Course表按Cno(课程号)升序建唯一索引,create unique index course_cnoon course(cno asc)③用T—SQL语句为SC表按Sno(学号)升序和Cno(课程号)号降序建唯一索引。
数据库系统原理实验指导书参考答案计本1电商
浙江树人大学信息科技学院《数据库系统原理》实验指导书适合专业:计算机科学与技术本科专业编写部门:电子商务教研室编写日期:2012.02实验一:SQL Server 2005服务器管理... 错误!未定义书签。
实验二:创建和管理数据库.............. 错误!未定义书签。
实验三:数据定义 .............................. 错误!未定义书签。
实验四:数据更新 .............................. 错误!未定义书签。
实验五:数据查询1——简单查询... 错误!未定义书签。
实验六:数据查询(2)—连接查询错误!未定义书签。
实验七:数据查询(3)—综合........ 错误!未定义书签。
实验八:视图 ...................................... 错误!未定义书签。
实验九:约束、默认、规则.............. 错误!未定义书签。
实验十:存储过程 .............................. 错误!未定义书签。
实验十一:触发器(1).................... 错误!未定义书签。
实验十二:触发器(2).................... 错误!未定义书签。
实验十三:安全性管理 ...................... 错误!未定义书签。
实验十四:数据库的备份与还原...... 错误!未定义书签。
实验一:SQL Server 2005服务器管理一、实验目的通过实验使学生掌握SQL Server 2005数据库服务器启动、暂停、停止的方法;掌握SQL Server 2005数据库服务器的注册方法。
二、原理解析1、SQL Server 2005服务器注册注册服务器就是在SQL Server Management Studio中登记服务器,然后把它加入到一个指定的服务器组中,并在SQL Server Management Studio中显示SQL Server服务器的运行状态和在SQL Server Management Studio连接时自动启动SQL Server服务器。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三数据更新
日期:2010-4-21
一、实验目的:
1.进一步加深对数据更新(插入、修改及删除)SQL语句的理解并熟练应用
2.通过上机实验体会关系数据库中三类完整性规则对更新操作的影响
二、实验内容:
1、利用INSERT语句向表中插入数据。
●插入一门“数值分析”课程,其课程号为9,2学分;
●建立一个与选课表结构相同的表SC1_120081102134,并输入若干数据,将
SC1_120081102134中的数据插入到选课表中
2、利用UPDATE语句更改表中数据。
●将3号学生的选修课成绩改为95;
●将“计算机科学系”的学生的选修课程号改为10003;
3、利用DELETE语句删除表中数据。
●删除选修课成绩低于60分的选课记录;
●删除所有的“计算机科学系”的学生选修课记录;
4、根据实验一中三类完整性的定义,分别对主表和从表进行增删改数据,观察主从表之间
数据变化的相互影响。
三、实验记录与问题讨论:
1、(1)语句如下:
insert
into Course
values('10009','数值分析','林永柳',3,50,2,NULL);
结果如下:
数值添加后如下:
(2)建立表SC1_120081102134
create table SC1_120081102134 (
StuNo char(12),
CourseNo char(10),
Grade int,
);
之后再用类似以下的语句插入数据:
insert
into SC1_120081102134
values('120081102105','10009',80)插入数据后结果如右图:
将数据插入到选课表中:
insert
into Student_Course
select*
from SC1_120081102134
2、(1)
update Student_Course
set grade ='95'
where StuNo ='120081102103'
(2)
update Student_Course
set CourseNo ='10003'
from Student_Course,Student
where Student_Course.StuNo = Student.StuNo and Department ='计算机科学系'
3、(1)
delete
from Student_Course
where Grade < 60
“(0行受影响)”说明没有低于60分的选课记录。
(2)
delete
from Student_Course
where'计算机科学系'=
(
select Department
from Student
where Student.StuNo = Student_Course.StuNo )
选课表中原有的计算机科学系的选课记录均已被删。
4、在Student_Course加入记录,执行以下语句:
insert
into Student_Course
values('120081102134','10009',80)
出现错误:
这是由于Student表中没有该学生学号记录。
在Student表中删除记录:
先在Student_Course表中加入一条记录:
执行以下语句:
delete
from Student
where StuNo ='120081102105'
出现错误:
这是由于Student_Course表中有该学生选课记录,不能在Student表中删除该学生记录。
将Student_Course表中的学生学号改为Student表中不存在的记录,语句如下:
update Student_Course
set StuNo ='120061101335'
from Student_Course
where StuNo ='120081102105'
出现错误:
这是由于Student_Course表中的学号与Student表中的学号的约束关系所致。