数据库实验答案

合集下载

数据库实验(实验七数据查询)实验报告答案

数据库实验(实验七数据查询)实验报告答案

实验7数据查询【实验内容】7.1单表查询1、指定列或全部列查询1) 查询S表中全体学生的详细记录use jxsk select * from S出言岂select - f Tdtt s|.1结杲SEX AGE DEPT NATEVEJ_a,i soi王青山19计算机NULL2SI—赵亦17软件MULL 35218计算机NULL4S3弓綽明胃IS信息NULL554李四21包动ft NULL&S519软件NULL756昊丽20计算机NULL8S7范思明女ie NULL9S820自动化NULL10S919枫牛NULL2) 查询所有学生的姓名及其岀生年份。

use jxsk select SN, 2012 - AGEfrom S1「王諭】1&932赵亦1995J钱尔15944號慣明隔&李四1S516周展憫15537昊丽13828范思明1994S?«1S9210张海涛2、按条件查询及模糊查询1)查询考试成绩有不及格的学生的学号。

use jxsk selectdistinct SNOfrom SCwhere SCORE<602)查询年龄在20 —23岁之间的学生的姓名、系名和年龄use jxsk select SN,DEPT, AGEfrom Swhere AGE>=20 and AGE<= 30□ us* select 5N, DEET, troni 5L AGE>=20 ard AGE<-30V结果J消息| SH DEPT ,<SE1[ SS'J自动化212昊丽计算机203补珊自动化203)查询姓李的学生的姓名、学号和性别。

use jxsk select SN, SNO, SEXfrom S where SNlike '李%'□ use jxsk select ^NO f SEX from 5 wriere EE 丄是'李虽「Array4) 查询名字中第二个字为明”字的男学生的姓名和系名use jxsk select SN, DEPTfrom Swhere SNlike '_% 明’and SEX='男’SN DEPTi !信息h^iiiiauaB in KI ■■■■■&■■■■#3、对查询结果排序1) 查询信息系、计算机系学生的姓名、系名,结果按系名升序,按姓名降序排序。

实验训练4答案:数据库系统维护

实验训练4答案:数据库系统维护

实验训练4答案:数据库系统维护实验训练4:数据库系统维护实验目的:在基于实验1创建的汽车用品网上商城中,练创建用户和权限管理,掌握数据库备份与恢复方法以及数据导出导入的技巧,了解数据库系统维护的主要工作。

实验内容:1.数据库安全性实验6-1】创建账户:创建一个用户名为‘Teacher’,密码为‘T’的用户;创建一个用户名为‘Student’,密码为‘S’的用户。

实验6-2】用户授权:将Shopping数据库上SELECT、INSERT、DELETE、UPDATE的权限授予‘Teacher’用户;将Shopping数据库上SELECT的权限授予‘Student’用户。

实验6-3】以‘Teacher’用户身份连接Shopping数据库,分别执行SELECT、INSERT、DELETE、UPDATE、CREATE操作,查看执行结果;以‘Student’用户身份连接Shopping数据库,执行SELECT操作,查看执行结果。

以‘Student’用户身份连接Shopping数据库,执行INSERT、DELETE、UPDATE操作提示无权限。

2.数据库备份与恢复实验6-4】使用mysqldump工具对Shopping数据库进行备份,查看备份文件。

命令为:mysqldump –uroot –p –hlocalhost shopping。

c:\shopping.sqlEnter password: -- Warning: Skipping the data of table mysql.event。

Specify the n explicitly.mysql@redhat6 MysqlDb_Backup]$ ls -ltr total xxxxxxx -rw-rw-r-- 1 mysql mysql xxxxxxxx37 Apr 8 09:45 Full-Backup_On_2018-04-08.sql -rw-rw-r-- 1 mysql mysql xxxxxxxx Apr 9 11:34 Backup_2018-04-09.sql -rw-rw-r-- 1 mysql mysql 5943 Apr 9 15:00使用mysqldump工具对Shopping数据库进行备份,并查看备份文件。

数据库原理及应用实验答案

数据库原理及应用实验答案

数据库原理及应用实验答案1. 数据库原理数据库原理指的是数据库系统的内部机制和运行原理。

以下是数据库原理的相关内容:- 数据库模型:定义数据的组织方式和约束条件,包括层次模型、网状模型、关系模型、面向对象模型等。

- 数据库结构:描述数据库中数据组织的方式,包括表、视图、索引、存储过程等。

- 数据操作:定义对数据库中数据进行操作的方式,包括增删改查等。

- 数据库事务:保证数据库操作的一致性和完整性的机制,包括ACID(原子性、一致性、隔离性、持久性)属性等。

- 数据库并发控制:处理多个用户同时访问数据库产生的冲突问题,包括加锁、事务隔离级别等。

- 数据库恢复与备份:保证数据库数据不丢失和可恢复的机制,包括日志、回滚、快照等。

2. 数据库应用实验答案以下是数据库应用实验中的相关问题和答案:问题1:什么是数据库?答案:数据库是存储、管理和操作结构化数据的系统。

它提供了数据的组织方式和数据操作的接口,用户可以通过数据库来存储和访问数据。

问题2:数据库的优点是什么?答案:数据库的优点包括:数据共享性高,数据冗余度低,数据一致性好,数据安全性高,数据的集中管理和维护方便等。

问题3:什么是关系数据库?答案:关系数据库是基于关系模型的数据库系统。

它使用表描述数据之间的关系,在关系数据库中,数据以行和列的形式存储,并通过主键和外键来建立关联关系。

问题4:什么是SQL语言?答案:SQL(Structured Query Language)是用于访问和操作关系数据库的标准语言。

它包括数据查询语言(SELECT)、数据定义语言(CREATE、ALTER、DROP)、数据操作语言(INSERT、UPDATE、DELETE)和数据控制语言(GRANT、REVOKE)等。

问题5:什么是数据库调优?答案:数据库调优是指对数据库系统进行性能优化的过程。

它包括优化数据库结构、调整数据库参数、优化查询语句、优化索引和表分区、优化物理存储等方法,以提高数据库的性能和响应速度。

数据库实验四答案

数据库实验四答案

数据库实验四答案--实验四----1.定义“IS”系学生基本情况视图V_IS 并查询结果;create view V_ISasselect *from Swhere Sdept=&#39;IS&#39;with check option;select *from V_IS;--2.将S,C,SC表中学生的学号,姓名,课程号,课程名,成绩定义为视图V_S_C_G并查询结果;create view V_S_C_Gasselect S.Sno,Sname,o,Cnamefrom S,C,SCwhere S.Sno=SC.Sno and o=o;select *from V_S_C_G;--3.将各系学生人数,平均年龄定义为视图V_NUM_AVG并查询结果; create view V_NUM_AVGasselect count(Sno) DeptNum ,avg(Sage) DeptAvgAge,Sdeptfrom Sgroup by Sdept;select *from V_NUM_AVG;--4.定义一个反映学生出生年份的视图V_YEAR并查询结果;create view V_YEARasselect Sno,2012-Sage birthdayfrom S;select *from V_YEAR;--5.将各位学生选修课程的门数及平均成绩定义为视图V_AVG_S_G并查询结果;create view V_AVG_S_Gasselect SC.Sno,count(o) CountCno,avg(Grade) AvgGradefrom S,C,SCwhere S.Sno=SC.Sno and o=ogroup by SC.Sno;select *from V_AVG_S_G;--6.将各门课程的选修人数及平均成绩定义为视图V_AVG_C_G并查询结果; create view V_AVG_C_Gasselect count(SC.Sno) Cnum,avg(Grade) AvgGradefrom S,C,SCwhere S.Sno=SC.Sno and o=ogroup by o;select *from V_AVG_C_G;--7.查询平均成绩为90分以上的学生学号、姓名和成绩;select SC.Sno,Sname,avg(Grade) AvgGradefrom S,SCwhere S.Sno=SC.Snogroup by SC.Sno,Snamehaving avg(Grade) &gt;90;--8.查询各课成绩均大于平均成绩的学生学号、姓名、课程和成绩;create view V_AVGasselect o,avg(Grade) AvgGradefrom C,SCwhere o=ogroup by o;selectdistinct S.Sno,Sname,o,Gradefrom S,SC,C,V_AVGwhere S.Sno=SC.Sno and o=V_o and Grade &gt;V_AVG.AvgGrade ;--9.按系统计各系平均成绩在80分以上的人数,结果按降序排列;select Sdept,count(AvgGrade) Numfrom S,V_AVG_S_Gwhere S.Sno=V_AVG_S_G.Sno and AvgGrade &gt; 80group by Sdeptorder by Num desc;--10通过视图V_IS,分别将学号为“S1”和“S4”的学生姓名更改为“S1_MMM”,”S4_MMM”并查询结果;insert into S(Sno,Sname,Ssex,Sage,Sdept) values(&#39;200215121&#39;,&#39;三毛&#39;,&#39;男&#39;,21,&#39;IS&#39;);insert into S(Sno,Sname,Ssex,Sage,Sdept) values(&#39;200215124&#39;,&#39;紫薇&#39;,&#39;女&#39;,19,&#39;IS&#39;);update V_IS set Sno=&#39;S1_MMM&#39; where Sno=&#39;200215121&#39;; update V_IS set Sno=&#39;S4_MMM&#39; where Sno=&#39;200215124&#39;; select *from V_IS;--11.通过视图V_IS,新增加一个学生记录(&#39;S12&#39;,&#39;YAN XI&#39;,19,&#39;IS&#39;),并查询结果;insert into V_IS(Sno,Sname,Sage,Sdept) values(&#39;S12&#39;,&#39;YAN XI&#39;,19,&#39;IS&#39;);select *from V_ISwhere Sno=&#39;S12&#39;;--11.通过视图V_IS,新增加一个学生记录(&#39;S13&#39;,&#39;YAN XI&#39;,19,&#39;MA&#39;),并查询结果;insert into V_IS(Sno,Sname,Sage,Sdept) values(&#39;S13&#39;,&#39;YAN XI&#39;,19,&#39;MA&#39;);-- Tip:由于该学生是MA系的,当有check约束时将会产生更新错误。

数据库实验及其答案

数据库实验及其答案

《数据库系统概论》实验报告书专业班级学号姓名指导教师安徽工业大学计算机学院实验一:数据定义/数据操纵语言[ 实验日期 ] 2011 年 4 月 10 日[ 实验目的 ]熟悉SQL SERVER上机环境;熟练掌握和使用DDL语言,建立、修改和删除数据库表;熟练掌握和使用DML语言,对数据进行增加、修改和删除操作。

[ 实验内容 ]1.先建立数据库:STUDENT用两种方式建立:在查询分析器中以DDL语言方式建立.步骤为:先在指定的地方建立放置数据库文件的文件夹(如学生数据库),然后将建立的数据库文件放到指定的文件夹中.2.SQL数据定义语句:例1-1: (建立数据库表) 建立教学数据库的四个数据库表,其中Student表中不包含SSEX(C,2) 字段,Sname 字段为Sname(C,8)且可为空。

create table Student(SNO char(5) primary key,SNAME char(8) NULL,SDEPT char(2),SCLASS char(2),SAGE smallint)create table Course(CNO char(3) primary key,CNAME char(16),CTIME smallint)create table Teach(TNAME CHAR(8),TSEX CHAR(2),CNO CHAR(3),TDATE smalldatetime,TDEPT CHAR(2)) create table Score (sno char(5),cno char(3),Score float);例1-2: (修改数据库表) 在Student表中增加SSEX(C,2) 字段。

alter table student add SSEX char(2)例1-3: (修改数据库表) 将Student表中把Sname 字段修改为Sname(C,10)且为非空。

数据库实验报告及答案

数据库实验报告及答案

实验任务书(实验一、实验二)课程名称:数据库原理与技术实验报告要求:1.列出所有的SQL语句和源代码;2.程序要求有适当的注释;3.对数据完整性约束实施要求给出相应的测试用例。

4.实验报告提交电子档。

实验内容:一:创建表、更新表和实施数据完整性1.运行给定的SQL Script,建立数据库GlobalToyz。

2.了解表的结构,建立所有表的关系图。

3.利用系统定义的存储过程sp_helpdb查看数据库的相关信息,例如所有者、大小、创建日期等。

4.查看所有表中出现的约束(包括Primary key, Foreign key, check constraint, default, unique)5.把价格在$20以上的所有玩具的信息拷贝到称为PremiumToys的新表中。

SELECT*INTO PremiumToysFROM ToysWHERE Toys.mToyRate>20;6.对表Toys实施下面数据完整性规则:(1)玩具的现有数量应在0到200之间;(2)玩具适宜的最低年龄缺省为1。

ALTER TABLE ToysADD CONSTRAINT C1CHECK (siToyQoh BETWEEN 0 AND 200);ALTER TABLE ToysADD CONSTRAINT C2default(1)for siLowerAge;7.给id为‘000001’玩具的价格增加$1。

update Toys set mToyRate=mToyRate+1 where cToyId='000001';8. 列出表PickofMonth中的所有记录,并显示中文列标题。

SELECT cToyId[玩具编号],siMonth[生产月份],iYear[生产年份],iTotalSold [销售总量]FROM PickofMonth;二:查询数据库1.显示属于California和Illinoi州的顾客的名、姓和emailID。

数据库技术实验报告的答案

数据库技术实验报告的答案

数据库技术实验报告的答案实验目的:本次实验旨在加深对数据库管理系统(DBMS)的理解,掌握数据库设计、实现和查询的基本技能,并通过实际操作来熟悉SQL语言的运用。

实验环境:1. 操作系统:Windows 102. 数据库管理系统:MySQL 8.03. 开发工具:Visual Studio Code实验内容:1. 数据库的创建与设计2. 数据表的创建与数据类型选择3. 数据的插入、更新与删除4. SQL查询语句的编写与执行5. 数据库的备份与恢复实验步骤与结果:1. 数据库的创建与设计:- 使用MySQL命令行工具创建名为“StudentsDB”的数据库。

- 设计了三个表:Students(学生信息),Courses(课程信息),Enrollments(选课信息)。

2. 数据表的创建与数据类型选择:- 为Students表创建字段:StudentID(INT,主键),Name (VARCHAR(50)),Age(INT),Gender(CHAR(1))。

- 为Courses表创建字段:CourseID(INT,主键),CourseName (VARCHAR(100)),Credits(INT)。

- 为Enrollments表创建字段:EnrollmentID(INT,主键),StudentID(INT),CourseID(INT),Grade(CHAR(2)),并设置StudentID和CourseID为外键。

3. 数据的插入、更新与删除:- 向Students表插入了10条学生记录。

- 向Courses表插入了5门课程记录。

- 通过Enrollments表记录了学生的选课情况,包括成绩。

- 使用UPDATE语句更新了学生的选课成绩。

- 使用DELETE语句删除了某些学生的选课记录。

4. SQL查询语句的编写与执行:- 编写了多条SELECT语句,查询了学生信息、课程信息以及学生的选课情况。

- 使用了JOIN操作查询了学生与其选修课程的关联信息。

数据库实验答案

数据库实验答案

实验3 使用T-SQL语言完成单表查询一、实验目的掌握使用T—SQL语言完成单表查询掌握常用谓词的用法掌握where子句的用法掌握order by 子句的用法掌握group by 子句和having短语的用法二、实验环境Microsoft SQL Server 2000。

三、实验内容和要求1.查询全体学生的详细信息。

2.查询所有课程的详细信息.3.查询所有选课记录的详细信息,要结果表中的列名以中文的形式显示,分别为:学号,课程号,成绩。

4.查询已被学生选修了的课程的编号。

5.查询系别编号为“d002”的学生的姓名和性别。

6.查询年龄在19至21岁或者性别为“女”的学生的学号和所在系别编号。

7.查询系别编号为d001、d002和d003的学生的学号和姓名。

8.查询课程名为“C_”开头的课程名和学分.9.某些学生入学后还没有确定所在的系,查询还没有确定系的学生的姓名。

10.查询成绩大于60分的学生的学号、课程号和成绩,并将查询结果按课程编号升序排列,同一课程的成绩按分数降序排列。

11.查询学校所开设的总的课程数.12.计算2号课的学生成绩总和以及平均成绩,对应的列名分别为“总成绩”和“平均成绩”。

13.查询选修了3号课程的学生的最高分和最低分,对应的列名分别为“最高分”和“最低分"。

14.求各个系别的编号以及各系的人数。

15.查询选课人数大于等于2人的课程编号以及选课的人数。

16.查询学生200215122选修课程的总成绩对应的列名为“总成绩”,并显示出学号。

17.查询有2门以上课程是80分以上的学生的学号及课程数。

18.查询选修了1号课的学生的学号和成绩,结果按成绩降序、学号升序排列.实验1 使用T-SQL语言建库、建表实验2 向表中增、删、改数据四、实验目的掌握使用T-SQL建库、建表、修改表;掌握使用T-SQL对表中数据进行插入、删除和修改.五、实验环境Microsoft SQL Server 2000.六、实验内容和要求19.建立数据库STDB20.在数据库STDB中建立四个表:Student表Department表Course表21.分别向以上四个表中增加数据。

数据库实验及答案

数据库实验及答案

实验二SQL语言的基本操作实验目的和要求:掌握利用SQL语句完成各种查询操作的能力。

重点掌握用SELECT语句进行各种查询;掌握INSERT语句的用法。

实验内容:用SQL语句完成一下的要求:1.查询信息系(IS)的所有学生信息select * from student where sdept=’is’2.查询选修了“数学”课的所有学生名单Select s.sno,snameFrom student s,course c,scWhere s.sno=sc.sno and o=o and cname=’数学’3.查询至少选修了一门其直接先行课为5号课程的学生的姓名。

Select snameFrom student s, sc, course cWhere s.sno=sc.sno and o=o and pcno=’5’4.查询全体学生的姓名和出生年份。

select sname,year(now())-sage as '出生年份' from student5.查询所有姓王的学生。

select *from student where sname like '王%'6.查询选修了3号课程的学生姓名及成绩,并按成绩降序排序。

Select sname,gradeFrom student s, scWhere s.sno=sc.sno and o=’3’Order by grade desc7.查询全体学生情况,查询结果按所在系的系号升序排列,同一系中的学生按年龄降序排列。

Select *From studentOrder by sdept asc,age desc8.计算2号课程的平均成绩。

Select avg(grade)From scWhere cno=’2’9.查询选修了2号课程的学生的最高成绩。

select max(grade) from sc where cno='2'10.求各个课程号及相应的选课人数。

数据库原理实验答案

数据库原理实验答案
Values(7,'PASCAL语言',6,4);
3)向SC表中插入数据
Insert Into SC(Sno,Cno, Grade) Values(200215121,1,92);
Insert Into SC(Sno,Cno, Grade) Values(200215121,2,85);
Insert Into SC(Sno,Cno, Grade) Values(200215121,3,88);
Insert Into SC(Sno,Cno, Grade) Values(200215122,2,90);
Insert Into SC(Sno,Cno, Grade) Values(200215122,3,80);
Insert Into SC(Sno,Cno, Grade) Values(200215121,4,92);
Insert Into SC(Sno,Cno, Grade) Values(200215121,5,85);
Insert Into SC(Sno,Cno, Grade) Values(200215121,6,88);
Insert Into SC(Sno,Cno, Grade) Values(200215123,2,90);
select sno,grade from sc where cno='3' order by grade desc;
8)查询各个课程号与相应的选课人数。
select cno, count(sno) from sc group by cno;
2. 连接查询操作。该实验包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。

数据库实验答案

数据库实验答案

1)找出 MGM studios 的地址。

select 地址from 制片公司where 公司名称='MGM studios'2)找出 Sandra Bullock 的出生日期。

select 生日from 电影明星where 姓名='Sandra Bullock'3)找出在2003年拍摄过电影的所有影星,或者拍摄过电影中含有"天空"的电影的所有明星。

select 演员姓名$from 演员参演电影where 拍摄年份=2003 or 电影名称 like'%天空%'4)找出净资产至少1000万美元的所有行政长官。

select 姓名from 制片人与行政总裁where 资产>=5)找出所有的男影星或者是住址中含有 Malibu 的影星。

select 姓名from 电影明星where 地址 like 'Malibu' or 性别 like '男'@1)电影"加勒比海盗4"中的男影星都有谁。

select 姓名from 电影明星where 性别 ='男' and 姓名 in(select 演员姓名from 演员参演电影where 电影名称='加勒比海盗4')2)谁是米高梅制片公司的总裁。

{select 姓名from 制片人与行政总裁where 身份证号 =( select 行政总裁from 制片公司where 公司名称 ='MGM studios')4)那些电影比《乱世佳人》更长。

select 电影名称from 电影[where 长度 >(select 长度from 电影where 电影名称 = '乱世佳人')5)那些行政长官比 Tom 更富有。

select 姓名from 制片人与行政总裁where 资产>^(select 资产from 制片人与行政总裁where 姓名='Tom')1、找出价格低于6000元的PC计算机型号、速度、以及硬盘容量。

mysql数据库实验答案

mysql数据库实验答案

实验一创建、修改数据库和表结构1、用create建立教学数据库的五个基本表:(1)学生表(学号,姓名,性别,年龄),student((Sno, sname,ssex,sage) ;(2)课程表(课程号,课程名,学分),Course (Cno, Cname, credit) ;(3)选课表(学号,课程号,成绩),SC (Sno,, Cno, grade ) ;(4) 教师表(教师号,姓名,性别,出生年月,系部,职称,地址),T(Tno,Tname,ssex,birthday,dept,title,address) ;(5) 工资表(教师号,基本工资,职务工资,合计),Salary(Tno,jbgz,zwgz,hj);Create Database Student default character set utf8 default COLLATE utf8_bin;Use Student;Create Table Student(SNo c har(20) primary key,SName char(20) ,SSex char(4) default '男',SAge int) ENGINE=InnoDB;Create Table Course(CNo c har(20) primary key,CName char(20) NOT NULL,CRedit f loat) ENGINE=InnoDB;Create Table SC(SNo c har(20) NOT NULL,CNo c har(20) NOT NULL,Grade float,Primary Key(SNo, CNo),Foreign Key(SNo) References Student(SNo) On Delete Cascade,Foreign Key(CNo) References Course(CNo))ENGINE=InnoD B;Create Table T(TNo c har(20) Primary Key,TName char(20) NOT NULL,TSex char(4) default '男',birthday DateTime,dept char(20),title char(20),address char(20))ENGINE=InnoDB;Create Table Salary(TNo c har(20) NOT NULL,jbgz float,zwgz float,hj float,Foreign Key(TNo) References T(TNo) On Delete Cascade)ENGINE=InnoDB;2、用alter修改基本表(1)在已存在的学生表student中增加一个sdept(系)的新的属性列;alter table Student add Dept char(20);(2)将学生表student中sname属性列的数据类型修改为变长字符串varchar(10)。

数据库实验5答案

数据库实验5答案

实验五:数据库综合查询一、实验目的1.掌握SELECT语句的基本语法和查询条件表示方法;2.掌握查询条件种类和表示方法;3.掌握连接查询的表示及使用;4.掌握嵌套查询的表示及使用;5.了解集合查询的表示及使用。

二、实验环境已安装SQL Server企业版的计算机(120台);具有局域网环境,有固定IP;三、实验学时2学时四、实验要求1.了解SELECT语句的基本语法格式和执行方法;2.了解连接查询的表示及使用;3.了解嵌套查询的表示及使用;4.了解集合查询的表示及使用;5.完成实验报告;五、实验内容及步骤1.利用Transact-SQL嵌套语句实现下列数据查询操作。

1) 查询选修了计算机体系结构的学生的基本信息。

select*from studentwhere Sno in(select Sno from coursewhere Cno in(select Cno from sc where Cname='计算机体系结构'))2) 查询年龄比李勇小的学生的学号和成绩。

select a.sno,grade from student a,coursewhere a.sno=course.sno and sage<(select sage from student where sname='李勇')3) 查询其他系中比系编号为‘D1’的学生中年龄最小者要大的学生的信息。

select*from student where dnum<>'D1'AND SAGE>(select min(sage)from student where dnum='D1')4) 查询其他系中比系编号为‘D3’的学生年龄都大的学生的姓名。

select*from student where dnum<>'D3'AND SAGE>all(selectsage from student where dnum='D3')5) 查询‘C1’课程的成绩高于70的学生姓名。

数据库实验四作业及答案

数据库实验四作业及答案

数据库实验四作业及答案实验4数据查询一、实验目的1.掌握使用Tranact-SQL的SELECT语句进行基本查询的方法。

2.掌握使用SELECT语句进行条件查询的方法。

3.掌握嵌套查询的方法。

4.掌握多表查询的方法。

5.掌握SELECT语句的GROUPBY和ORDERBY子句的作业和使用方法。

6.掌握联合查询的操作方法。

7.掌握数据更新语句INSERTINTO、UPDATE、DELETE的使用方法。

二、实验准备1.了解SELECT语句的基本语法格式和执行方法。

2.了解嵌套查询的表示方法。

3.了解UNION运算符的用法。

4.了解SELECT语句的GROUPBY和ORDERBY子句的作用。

5.了解IN、JOIN等子查询的格式。

6.了解INSERTINTO、UPDATE、DELETE的格式与作用。

三、实验内容及步骤0.创建tudentdb数据库及其相应表,并录入数据。

启动查询分析器,运行下面链接的代码即可。

创建数据库代码1.在tudentdb数据库中,使用下列SQL语句将输出什么?(1)SELECTCOUNT(某)FROMgrade(2)SELECTSUBSTRING(姓名,1,2)FROMtudent_info(3)SELECTUPPER('kelly')(4)SELECTReplicate('kelly',3)(5)SELECTSQRT(分数)FROMgradeWHERE分数>=85(6)SELECT2,3,POWER(2,3)(7)SELECTYEAR(GETDATE()),MONTH(GETDATE()),DAY(GETDATE())2.在tudentdb数据库中使用SELECT语句进行基本查询。

(1)在tudent_info表中,查询每个学生的学号、姓名、出生日期信息。

SELECT某FROMtudent_info(2)查询学号为0002的学生的姓名和家庭住址。

数据库实验答案

数据库实验答案

实验四五、实验方法和步骤:1.向数据库的USERS表空间添加一个大小为10M的数据文件userdata02.dbf。

Alter tablespace users add datafile ‘c:\oracle\oradata\orcl\userdata02.dbf’ size 10M;2.向数据库的TEMP表空间添加一个大小为5N的临时数据文件temp02.dbf。

Alter tablespace temp add tempfile’c:\oracle\oradata\orcl\temp02.dbf’ size 5M;3.修改userdata02.dbf为自动增长方式,每次增长512k,没有限制大小。

Alter database datafile ‘c:\oracle\oradata\orcl\userdata02.dbf’ autoextend on next 512k maxsize unlimited;4.取消userdata02.dbf的自动增长方式。

Alter database datafile ‘c:\oracle\oradata\orcl\userdata02.dbf’ autoextend off;5.将userdata02.dbf大小设置为8MB。

Alter database datafile ‘c:\oracle\oradata\orcl\userdata02.dbf’ resize 8M;6.将userdata02.dbf设置为脱机。

Alter database datafile ‘c:\oracle\oradata\orcl\userdata02.dbf’ offline;7.将userdata02设置为联机。

Alter database datafile ‘c:\oracle\oradata\orcl\userdata02.dbf’ online;8.改变userdata02的名称。

数据库实验4答案

数据库实验4答案

实验4答案1.列出姓“王”且全名为3个汉字的学生的基本信息;select*from student where sname like'王__'2.显示在1986年以后出生的学生的学号和姓名;select sno,sname from student where year(getdate())-sage>19863.查询没有分配院系的学生的姓名和学号select sno,sname from student where sdept IS NULL4.按照课程号、成绩降序显示课程成绩在70-80之间的学生的学号、课程号及成绩;select sno,cno,grade from sc where grade>=70 and grade<80order by cno desc,grade desc5.按照院系降序显示所有学生的“院系,学号、姓名、性别、年龄”等信息,其中院系按照以下规定显示:院系为CS显示为计算机系,院系为IS显示为信息系,院系为MA显示为数学系,院系为EN显示为外语系,院系为CM显示为中医系,院系为WM显示为西医系,其他显示为院系不明;select院系=casewhen sdept='CS'then'计算机系'when sdept='IS'then'信息系'when sdept='MA'then'数学系'when sdept='EN'then'外语系'when sdept='CM'then'中医系'when sdept='WM'then'西医系'else'院系不明'end,sno 学号,sname 姓名,ssex 性别,sage 年龄from student6.列出同时选修“1”号课程和“2”号课程的所有学生的学号;select sno from scwhere cno='01'and sno in(select sno from scwhere cno='02')7.显示所有院系(要求不能重复,不包括空值),并在结果集中增加一列字段“院系规模”用来记录院系学生个数。

数据库实验及作业部分参考答案

数据库实验及作业部分参考答案

实验三关系查询与连接首先,将sales表中tot_amt的值计算出来。

update sales set tot_amt=0goselect order_no,tot=sum(qty*unit_price)into aa1from sale_itemgroup by order_nogoselect * from aa1goupdate sales set tot_amt=totfrom sales,aa1where aa1.order_no=sales.order_nogo1、查找所有经理的姓名、职称、薪水。

select emp_name ,title,salaryfrom employeewhere title='经理'2、查找出姓“王”并且姓名的最后一个字为“功”的员工。

select *from employeewhere emp_name like '王%功'//3、添加一条记录至employee表(用INSERT…..INTO)。

insert into employee(emp_no,emp_name,sex,dept,title,date_hired,salary)values('E0025','彭江','M','业务','职员',1900/01/21,43200)//4、将每个员工的薪水上调3%。

update employeeset salary=salary*1.03select *from employee3、查找住在上海或北京的女员工,并显示其姓名、所属部门、职称、住址select emp_name,dept,title,addrfrom employeewhere (addr='上海市' or addr= '北京市')and sex='F'4、在表sales中挑出销售金额大于等于10000元订单select *from saleswhere tot_amt>=10000.005、选取订单金额最高的前10%的订单数据。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
primary key(sno,cno),
foreign key (sno) references student(sno),
foreign key (cno) references course(cno)
)
--3
insert into department values('d001','cs')
insert into department values('d002','is')
13.查询选修了3号课程的学生的最高分和最低分,对应的列名分别为“最高分”和“最低分”。
14.求各个系别的编号以及各系的人数。
15.查询选课人数大于等于2人的课程编号以及选课的人数。
16.查询学生选修课程的总成绩对应的列名为“总成绩”,并显示出学号。
17.查询有2门以上课程是80分以上的学生的学号及课程数。
update student set bloodtype='A' where sno=''
update student set bloodtype='B' where sno=''
update student set bloodtype='O' where sno=''
update student set bloodtype='AB' where sno=''
24.删除7号课程的记录。
25.向学生表增加新列“血型”,并记录下学生表中已存在学生的血型信息。
实验4使用T-SQL语言完成多表查询
七、实验目的
掌握使用T-SQL语言完成等值连接查询
掌握使用T-SQL语言完成自身连接查询
掌握使用T-SQL语言完成外连接查询
掌握使用T-SQL语言完成嵌套查询
掌握使用T-SQL语言完成集合查询
insert into department values('d003','ma')
insert into student values('','李勇','男',20,'d001')
insert into student values('','刘晨','女',20,'d001')
insert into student values('','王敏','女',20,'d002')
29.查询姓名为“刘晨”的学生选修的课程名和学分。(要求分别用连接查询和嵌套查询完成)
30.查询CS系、IS系和MA系的学生的学号、姓名和性别。
31.查询号同学选修课程的总学分数,显示出姓名和总学分数。
32.找出每个学生小于他选修课程平均成绩的学号和课程号。
33.查询号同学所选修的课程中,成绩低于其他同学选修的某一课程成绩的课程,要求显示出其课程号和成绩。
34.查询号同学所选修的课程中,成绩低于其他有成绩的同学选修的所有课程成绩的课程,要求显示出其课程号和成绩。
35.查询号同学选修课程的课程号和课程名。(要求分别使用包含EXISTS谓词的嵌套查询以及连接查询完成)
36.查询既选修了课程1又选修了课程2的学生的学号。(要求使用嵌套查询完成)
37.查询选修了课程1或者选修了课程2的学生的学号。(要求分别用集合查询和多重条件查询完成)
实验3使用T-SQL语言完成单表查询
一、实验目的
掌握使用T-SQL语言完成单表查询
掌握常用谓词的用法
掌握where子句的用法
掌握order by子句的用法
掌握group by子句和having短语的用法
二、实验环境
Microsoft SQL Server 信息。
where student.sno=sc.sno and student.deptno=department.deptno and o=o
--2.查询所有课程的课程编号、课程名称、学分、选修该课程的学生编号以及成绩。
select o,cname,ccredit,sc.sno,grade from sc,course where o=o
--3.查询选修了1号课程且不及格的学生的学号、姓名。(要求分别用连接查询和嵌套查询完成)
select sc.sno,sname,grade from sc,student where sc.sno=student.sno and cno='1' and grade<60
select sno,sname from student where sno in(select sno from sc where cno='1' and grade<60)
--5.查询CS系、IS系和MA系的学生的学号、姓名和性别。
select sno,sname,ssex from student,department
update student set bloodtype='A' where sno=''
update student set bloodtype='B' where sno=''
--1.查询每个学生的学号、姓名、性别、所在系的名称、选修的课程名、学分以及成绩。
select student.sno,sname,ssex,dname,cname,ccredit ,grade from student,course,department,sc
2.查询所有课程的详细信息。
3.查询所有选课记录的详细信息,要结果表中的列名以中文的形式显示,分别为:学号,课程号,成绩。
4.查询已被学生选修了的课程的编号。
5.查询系别编号为“d002”的学生的姓名和性别。
6.查询年龄在19至21岁或者性别为“女”的学生的学号和所在系别编号。
7.查询系别编号为d001、d002和d003的学生的学号和姓名。
--4
update student set sage=21 where sno=''
--5
update sc set grade=grade+5
--6
delete from course where cno='7'
--7
alter table student
add bloodtype varchar(10)
insert into sc values('','8',68)
insert into sc values('','9',68)
insert into sc values('','2',90)
insert into sc values('','3',80)
insert into sc values('','1',null)
insert into student values('','张立','男',20,'d003')
insert into student values('','陈天华','男',20,'d003')
insert into student values('','宋阳','女',20,'d002')
insert into course values('1','数据库','5',4)
insert into course values('6','数据处理',null,2)
insert into course values('7','PASCAL语言','6',4)
insert into course values('8','C_语言',null,4)
insert into sc values('','1',92)
19.建立数据库STDB
20.在数据库STDB中建立四个表:
Student表
列名
类型
约束或索引
说明
Sno
Char(9)
主键约束
学号
Sname
Varchar(20)
非空约束
姓名
Ssex
Char(2)
性别
sage
Int
年龄
deptno
Char(10)
外键约束
所在系别编号
Department表
列名
类型
约束或索引
)
create table course
(
cno char(4) primary key,
cname varchar(40) unique,
cpno char(4),
ccredit smallint
)
go
create table sc
(
sno char(9),
cno char(4),
grade int,
insert into course values('2','数学',null,2)
insert into course values('3','信息系统','1',4)
相关文档
最新文档