数据库系统应用-实验二
数据库应用实验2

2016-2017学年第1学期《数据库应用》实验指导书实验2 数据库的单表查询和连接查询根据实验2的要求,按照“实验模板.doc”详细书写实验报告,将实验报告的文件名设置为“学号-姓名-实验2.doc”,提交到ftp://211.71.149.21/付红萍/课程作业/数据库应用/班级/实验2文件夹中。
一、实验目的1. 掌握无条件查询的使用方法。
2. 掌握条件查询的使用方法。
3. 掌握库函数及汇总查询的使用方法。
4. 掌握分组查询的使用方法。
5. 掌握查询的排序方法。
6. 掌握连接查询的使用方法。
二、实验内容根据实验1中创建的学生作业管理数据库以及其中的学生表、课程表和学生作业表,进行以下的查询操作(每一个查询都要给出SQL语句,列出查询结果(可以截图))。
1. 查询各位学生的学号、班级和姓名。
2. 查询课程的全部信息。
3. 查询数据库中有哪些专业班级。
4. 查询学时数大于60的课程信息。
5. 查询在1986年出生的学生的学号、姓名和出生日期。
6. 查询三次作业的成绩都在80分以上的学号、课程号。
7. 查询姓张的学生的学号、姓名和专业班级。
8. 查询05级的男生信息。
9. 查询没有作业成绩的学号和课程号。
10. 查询学号为0538的学生的作业1总分。
11. 查询选修了K001课程的学生人数。
12. 查询数据库中共有多少个班级。
13. 查询选修三门以上(含三门)课程的学生的学号和作业1平均分、作业2平均分和作业3平均分。
14. 讲学生作业表中的信息按照学号升序排列,如果学号相同,按作业1降序排列。
15. 查询于兰兰的选课信息,列出学号、姓名、课程名。
(使用两种连接查询的方式。
)。
数据库系统实验二

数据库系统实验二实验题目实验二查询数据库一、实验目的熟悉SQL语句的基本使用方法,学习如何编写SQL语句来实现查询1、掌握基本的SELECT查询及其相关子句的使用;2、掌握复杂的SELECT查询,如多表查询、子查询、连接查询和嵌套查询。
二、实验内容和要求使用SQL查询分析器查询数据,练习查询语句的使用,掌握SELECT 语句的完整结构,包括简单查询、嵌套查询、连接查询等基本实现方法,掌握存储查询结果的方法,体会各种查询的异同及相互之间的转换,体会各种查询的执行过程,为简单综合应用打下良好的基础。
三、实验主要仪器设备和材料1.计算机及操作系统:PC机,Windows 2000/xp;2.数据库管理系统:SQL sever 2000/2003/2005;四、实验方法、步骤及结果测试要求用SELECT完成以下查询,1、对实验一建立的数据库表进行查询简单查询:(1)、查询全部学生的学号、姓名、性别和出身年月日。
查询分析器执行情况:查询结果截图显示SQL语句及执行结果显示SELECT s_no,sname,sex,sbirthdayFROM student_3113006393(2)、查询全体学生的学号、姓名和年龄实现代码及查询结果截图:SELECT s_no,sname,2015-YEAR(sbirthday)FROM student_3113006393(3)、查询院系编号为‘510000’(计算机学院)的全部学生的学号、姓名、性别和出身年月日。
实现代码及查询结果截图:SELECT s_no,sname,sex,sbirthdayFROM student_3113006393WHERE dno='510000'(4)、查询“计算机科学与技术”专业(专业代码为‘******’)并且班级代码为‘0307’的学生的学号、姓名和出生日期。
实现代码及查询结果截图:SELECT s_no,sname,sbirthdayFROM student_3113006393WHERE spno='080605' AND class_no='0307'(5)、查询在‘1983/01/10’以后出生的计算机学院(院系编号为‘******’)学生的学号、姓名、性别和出身年月日。
《数据库实验》实验二 数据操作实验

院系:计算机学院实验课程:数据库实验实验项目:数据操作实验指导老师:XXX开课时间:XXXX ~ XXXX年度第 2学期专业:XXXX班级:XXXX级本X班学生:XXX学号:XXXXXXXX实验二数据操作实验一、实验任务及目的1. 实验任务:上机完成实验内容,主要是编写、运行和分析SQL,请预先自行判断SQL 的运行结果(例如:查询结果包含哪些数据;更新后关系数据如何变化),然后与实际的运行结果比较,以此发现和修正SQL编写中的错误。
2. 实验目的:能够熟练使用MS SQL Server的Query Analyzer工具,联机运行SQL并观察分析SQL的执行结果。
掌握SQL的数据定义、数据查询和数据修改功能,能独立用SQL表述问题,解决较复杂的应用需求。
二、实验的主要硬件软件环境MS SQL Server、计算机磁盘三、实验主要数据结构线性表四、实验的主要算法1.至少向北京或天津的工程提供了零件的供应商名,供应的零件名、工程名和供应数量。
SELECT PNAME,JNAME,SNAME,QTYFROM S,P,J,SPJWHERE SPJ.SNO=S.SNOAND SPJ.JNO=J.JNOAND SPJ.PNO=P.PNOAND (J.CITY=’上海’ OR J.CITY=’天津’)2.供应红色零件给工程J1的供应商名SELECT SNAMEFROM S,P,SPJWHERE SPJ.JNO=’J1’AND SPJ.SNO=S.SNOAND SPJ.PNO=P.PNOAND COLOR=’红’3. 没有使用天津产的零件的工程号SELECT JNOFROM JWHERE JNO NOT IN(SELECT JNOFROM SPJ,SWHERE SPJ.SNO=S.SNOAND CITY=’天津’)4.没有向位于相同城市的工程供应零件的供应商名SELECT SNAMEFROM SWHERE SNAME NOT IN( SELECT SNAMEFROM S,J,SPJWHERE SPJ.JNO=J.JNOAND SPJ.SNO=S.SNOAND S.CITY=J.CITY)5. 和工程J3位于同一城市且使用过至少一种相同零件的其它工程名SELECT DISTINCT(JNAME)FROM J,SPJWHERE SPJ.JNO=J.JNOAND CITY IN(SELECT CITYFROM JWHERE J.JNO=’J3’)AND JNAME NOT IN(SELECT JNAMEFROM JWHERE J.JNO=’J3’)6. 每种颜色零件的总重量SELECT COLOR,SUM(WEIGHT)FROM PGROUP BY (COLOR)7.红色零件的平均重量SELECT AVG(WEIGHT)FROM PWHERE COLOR=’红’8.供应商最集中的城市(意即,哪个城市的供应商最多?)SELECT S.CITYFROM SGROUP BY (CITY)HAVING COUNT(CITY)>=ALL(SELECT COUNT(CITY)FROM SGROUP BY (CITY))9.对上海和天津,统计该城市的供应商一共供应了多少数量的零件。
数据库系统实验指导及内容二

数据库系统实验指导及内容二实验六数据查询一.实验目的1.观察查询结果,体会SELECT语句实际应用;2.要求学生能够在查询分析器中使用SELECT语句进行简单查询。
3.熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。
二.实验准备1.成功建立了基本表。
2.了解简单SELECT语句的用法。
3.熟悉查询分析器中的SQL脚本运行环境。
三.实验要求1.完成简单查询和连接查询操作,并验收实验结果提交实验报告四.实验内容所有的查询全部用Tranact-SQL语句实现。
此部分查询包括投影、选择条件表达、数据排序等。
对EDUC数据库实现以下查询:1)查询计算机应用专业的学生学号和姓名;Selectno,namefromtudent,clacwhere.clno=c.clnoandc.pecialty=’计算机应用’;2)查询选修了课程的学生学号,理解为什么使用DISTINCT,并比较未使用ditinct的情况;Selectditinctnofromc;3)查询选修课程0001且成绩在80-90之间的学生学号和成绩,并将成绩乘以系数0.75输出;Selectnamegrade/0.75fromcwherecno=0001andgradebetween80and90;4)查询计算机应用和数学专业的姓“张”的学生的信息。
Selecttudent.某,cla.pecialtywheretudent.clno=cla.clnoandcla.pecialtyin(‘计算机应用’,’数学’)like’张%’;5)查询“0001”课程的成绩不低于李杰的学生学号和成绩;6)查询其他系中比计算机应用专业学生年龄都小的学生信息;Selecttudent.某,cla.pecialtyfromtduent,clawhereage<all(electagefromtudent,clacwhere.clno=c.clnoandc.pec ialty=’计算机应用’)andcla.peciatynotin(‘计算机应用’);7)查询没有选修“0002”课程的学生姓名;Selectditinctnamefromtudentleftouterjoincontudent.no=c.nowhe recno<>’0002’;8)查询选修了全部课程的学生的姓名,首先向SC表中插入一条记录,具体信息为:学号:20220222,课程号:0007,成绩:70,这里有两种方法;Inertintocvalue(’20220222’,’0007’,’70’);方法一:使用嵌套查询方法二:使用e某it谓词删除所插入的记录;Deletefromcwhereno=’20220222’andcno=’0007’;实验七使用聚集函数的SELECT语句一.实验目的1.熟练掌握数据查询中的分组、统计、计算和组合的操作方法。
数据库应用 实验报告2 查询操作及SQL语言应用

实验报告二 查询操作及SQL 语言应用实验类型:基本学时:4(分两次完成)班级:无机非(2) 日期:3月24日请输入你的班级和做实验的日期。
按照《数据库技术及应用——习题与实验指导》第一部分实验指导中“实验六 查询操作”和“实验二 SQL 语言应用”的实验内容,边完成各项实验操作,边按要求填写该实验报告。
一、实验目的1. 了解查询类型。
2. 掌握创建单表和多表选择查询的操作方法。
3. 掌握创建生成表查询的操作方法。
4. 掌握创建更新查询的操作方法。
5. 掌握创建SQL 查询的操作方法。
二、实验报告内容1. 打开自备优盘保存位置的“学号 姓名 英才学校数据库”,参照P.31图1-6-11~图1-6-14的表格内容,分别给“学号 姓名 英才学校数据库”数据库表中“学院”、“系”、“班级”和“学生”表输入数据(其中必须有自己院、系和班级的真实信息的记录),并将四张“表”粘贴到此:姓名:潘红星 错误!未找到引用源。
学号:1002010211错误!未找到引用源。
并将实验操作结果粘贴到此:级_学生查询”),并将实验操作结果粘贴到此:4.预习P.7“实验二SQL语言应用”中实验2-9~实验2-18的操作提示,参照P.33“实验六查询操作”中实验6-3~实验6-12的操作提示,使用查询“设计视图”创建SQL查询,并将定义中的每一个SQL编辑器窗口和查询结果的窗口粘贴到此:“查询1”(SQL编辑窗口)检索每位学生的姓名及生日“查询1”(选择查询窗口)检索出每位学生的姓名及生日“查询2”(SQL编辑窗口)检索男、女学生的人数“查询2”(选择查询窗口)检索出男、女学生的人数日“查询3”(SQL编辑窗口)检索每位学生所在班级“查询3”(选择查询窗口)检索出每位学生所在班级“查询4”(SQL编辑窗口)检索“软件工程”专业的全体学生“查询4”(选择查询窗口)检索出“软件工程”专业的全体学生“查询5”(SQL编辑窗口)检索每位学生所在学院、系和班级“查询5”(选择查询窗口)检索出每位学生所在学院、系和班级“查询6”(SQL编辑窗口)统计“J101”系全体男同学的人数“查询6”(选择查询窗口)统计出“J101”系全体男同学的人数“查询7”(SQL编辑窗口)检索男学生数3人及3人以上的班级“查询7”(选择查询窗口)检索出男学生数3人及3人以上的班级“查询8”(SQL编辑窗口)检索“计算机”学院院长姓名和电话以及系主任“查询8”(选择查询窗口)检索出“计算机”学院院长姓名和电话以及系主任“查询9”(SQL编辑窗口)检索“计算机”学院每位学生信息“查询9”(选择查询窗口)检索出“计算机”学院每位学生信息“查询10”(SQL编辑窗口)检索每个学生所选课程的成绩《信息技术应用》电子实验报告二 查询操作及SQL 语言应用将此电子实验报告以自己的学号姓名和实验序号为文件名(如:070000001张三 实验二)保存后上传到FTP 服务器“查询10” (选择查询窗口)检索出每个学生所选课程的成绩三、保存和上传实验报告注意将“学号 姓名 英才学校数据库”数据库文件保存在自备优盘的相应文件夹中,后续实验将反复应用。
数据库系统原理 实验二 以图形界面方式进行数据库和表的创建

实验二以图形界面方式进行数据库和表的创建实验目的:掌握使用图形界面的方式进行库和表的创建,以及数据的插入方法。
实验内容及要求:1、利用图形界面方式创建数据库;2、利用图形界面方式创建一个模式;3、利用图形界面方式在模式中创建表;4、利用图形界面方式在表中插入数据。
实验工具:企业管理器——可以运行在多种操作系统平台上的图形界面总控管理平台。
它允许用户、程序员和管理员进行管理和配置数据库服务器、管理各种数据库对象、管理数据安全、监视数据库服务活动、诊断修改和优化数据库等操作。
企业管理器的总的设计思想是记录下用户通过图形方式进行的操作,并转换成相应的SQL语句。
实验过程及步骤:一、创建TEST数据库创建步骤:打开企业管理器→在企业管理器的【数据库】节点,点击鼠标右键→点击【新建数据库】→弹出【新建数据库窗口】,在该窗口中的“数据库名称”后面输入要创建的数据库名,其他选项默认即可→点击【确定】。
图1 新建数据库二、在TEST数据库中创建SCOT模式实验一中已将TEST数据库创建完成,接下来需要在该数据库中创建SCOT 模式。
模式(Schema)实际上是一个名字空间,它包含命名对象(表,视图,存储过程,函数和序列)。
创建步骤:打开企业管理器→在企业管理器的【模式】节点,点击鼠标右键→点击【新建模式】→弹出【新建模式窗口】,在该窗口中的“模式名”后面输入要创建的模式名,点击【确定】。
图2 新建模式三、创建表在SCOT模式中创建三张表,分别为DEPT部门表、EMP员工表和SALGRADE工资等级表。
其中各表的结构为:DEPT表结构EMP表结构SALGRADE表结构创建步骤:打开企业管理器→在企业管理器的【表】节点,点击鼠标右键→点击【新建表】→弹出【新建表窗口】,在该窗口中的设置列名、数据类型、主键、精度等,点击【保存】,在窗口中输入表名。
图3 创建表四、在表中插入数据DEPT表数据EMP表数据SALGRADE表数据创建步骤:打开企业管理器→在企业管理器的【表】节点中找到插入数据的表名→点击鼠标右键→点击【打开表】下的【返回所有行】→弹出【打开表窗口】,在该窗口中的输入具体数据。
《数据库及其应用》实验报告2

《数据库及其应用》实验报告实验序号:B0901000-03 实验项目名称:SQL查询、选择查询和动作查询SELECT "张三">"李四","ABCD"<"abcd",(DATE()-#1992-10-8#)>1000(二)SQL命令进行查询和操作1.练习SQL查询的SELECT语句后输入“工商管理”后便会显示所有工商管理专业女生的信息结果显示如下:将“法学院(04)”开设课程的学分增加1分。
UPDA TE 课程删除“信息学院(09)”开设的没有学生选修的课程。
DELETE FROM 课程WHERE 学院号="09" AND 课程号NOT IN (SELECT 课程号FROM 成绩).创建“教师”表,包括:工号、姓名、性别、生日、职称、基本工资、学院号。
写出创建命令。
(三)选择查询操作③查询没有选课的男学生学号、姓名,即成绩表中没有记录的学生数据。
将“学生表”加入设计视图。
选择“学号”、“姓名”字段显示,在第三列输入“注:3.进行参数查询通过参数查询指定日期以后出生的某个民族的学生信息。
步骤:启动选择查询设计窗口,将“学生”表加入设计窗口,在QBE窗口中选择“生表所有字段。
选中“生日”字段,去掉“显示”行的复选框,在条件行输入>[SR](四)动作查询操作1.生成表查询操作练习将“查询平均成绩在80分以上的各位学生的学号、姓名和平均分”的结果生成新表,秀学生名单”。
操作结果如下3.追加查询操作将平均分在80~85分之间的学生及成绩数据加入“优秀学生名单”表,步骤:在“字段”栏设置“学号”、“姓名”和“成绩”字段。
单击“总计”按钮,增加“总计”栏。
设置“学号”和“姓名”为分组字段,“成绩”字段为“平均值”字段,在“条件”栏中输入>=80and<85.四、回答问题1.有哪几种方式可进入“SQL视图”?如果用“记事本”编写了SQL语句,是否可以在视图中使用?如何操作?答:单击查询工具栏的“视图”工具的下拉按钮,选择“SQL视图”选项或单击菜单栏中“视图”,选择“SQL视图”。
数据库应用实验二

数据库应用报告学院:计算机学院班级:姓名:学号:课程名称:数据库应用(实验二)第四章数据表与表数据1.实验目的1.了解SQL Sever的数据类。
2.了解数据表的结构特点。
3.学会使用对象资源管理器和T-SQL语句创建数据表。
4.学会在对象资源管理器中对数据表进行插入修改和删除数据操作。
5.学会使用T-SQL语句对数据表进行插入修改和删除数据的操作。
6.学会定义约束,使用默认值和规则。
2.实验准备参照4.1.1节给出的数据库样本,为数据表设计列名称、列类型、列宽度、是否允许为空、。
同时需要实施数据完整性,及PRIMARY KEY (主键)约束,FOREIGN KEY(外键)约束,UNIQUE(唯一)约束,CHECK(检查)约束,DEFAULT (默认值)约束,除此之外还需要默认值和规则。
3.实验内容和步骤1)独立实践:为学生考试管理创建对应的数据表stud_exam。
数据包括考试课程,考试类型,考试人数,考试时间,考试编号,监考人,考试班级,考试规则,考场记录等。
createtable stud_exam(Course nvarchar(20),CourseType nvarchar(20),Number int,testTime datetime,CourseIndex int,TestTeacher nvarchar(20),TestGrade nvarchar(10),TestRules text,TestRec text)2)独立实践:写几个批处理,完成下列任务:首先创建一个名为dept_code的院系代码表,然后构建一个无穷循环结构,插入数据到列表中,直到有10条记录。
用变量记录已存储到表中的记录数,当变量的值到达10时,使用BREAK 语句退出循环。
最后显示所输入的记录。
createtable dept_code(deptcode char(2),deptname nvarchar(20))godeclare @count intset@count = 1label:while @count > 0insertinto dept_code values(N'01',N'abc')if @count = 10breakelsegoto labelgoselect*from dept_codego3)独立实践:为表stud_info的zipcodee建立DEFAULT约束。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
洛阳理工学院实验报告
3.执行下面用insert语句向“借阅”表中添加2条记录。
.在数据库XXX中
)执行语句:ALTER TABLE 借阅ADD id int identity(1,1);
)查询学号为“08050101”的学生的学号、姓名以及其选修的分数高于)查询选课学分已达到9学分的学生学号、姓名。
【提示:用CTE或派生表】
student表上新建一个按姓名的非聚集索引,然后执行下面的语句,查看这些
.select studentno,sname from student where studentno = '09050530'
teaching数据库中完成视图操作
)新建一个视图namelist,其内容包括学生的学号和姓名。
记下创建该视图的语
view namelist AS
studentno,sname
student
)执行如下创建视图的语句:
create view creditofstudent as
select s.studentno,sname,c.credit
)执行如下语句,记录是否成功执行,说明其原因:
insert into creditofstudent(studentno,credit) values('08050288',5) ; 不能,原因:插入操作在视图中不能修改多张表。