数据库实验上机题
数据库上机实验

创建数据表与数据输入Part I. 使用SQL Server Management Studio创建数据表和输入数据1. 在SQL Server Management Studio中创建数据表P69 1.(1)-(6)2. 为数据表输入数据P76 4.(1)-(4)3. 数据浏览P77 1. (1)-(2)2. (1)-(3)Part II. 使用SQL语句创建数据表和输入数据1. 使用SQL语句创建数据表P72. 例3-22.使用SQL语句输入数据P82. 例3.8习题:P.105 (1)(2)insert数据操作Insert、Update、Delete P105 3. 上机练习题(2)(4)Insert(100001, 1000, 2002-12-18 0:00:00) (100002, 2000, 2010-3-20 0:00:00)Update(100001, 1500, 2002-12-18 0:00:00) (100002, 2000, 2012-9-25 0:00:00)Delete1.将teaching数据库中score表的studentno列设置为引用表student的外键。
ALTER TABLE ScoreADD CONSTRAINT FK_score_student FOREIGN KEY (studentno)REFERENCES student(studentno)2.将teaching数据库中class表的classname创建UNIQUE约束。
ALTER TABLE classADD CONSTRAINT UQ_class UNIQUE(classname)执行如下插入语句,查看提示信息INSERT INTO class VALUES(‘090602’, ’计算机0902’, ’计算机学院’, ’马文斐’) 3. 为teaching数据库中student表的birthday列创建CHECK约束,规定学生的年龄在17-25岁之间。
数据库应用上机练习题目

1、教学目的:(1)熟悉并掌握ACCESS数据库管理系统的应用;(2)加深对所学的关系型数据库基本理论的理解。
2、教学内容(1)熟悉教材中表3.1-3.6所列明的教学管理系统的数据关系的情况,对其中的某些不合理之处做出修改。
(2)按照表3.9-3.11所使用的格式,写出其余的三个表的表结构,并以表格的方式输入到一个Word文档之中。
(3)使用数据库管理系统ACCESS建立一空数据库,以自己的学号为其命名,并按照要求(2)中所确定的表结构,在空的数据库中建立各个数据表(特别注意,由于在以后的教学环节中该数据库文件仍将多次用到,请注意保存)。
(4)将表3.1-3.6中的数据输入到对应的数据表中,注意,省略号部分所代表的内容可以暂不考虑。
(5)为已经建立好的各个数据表建立主键。
(6)建立学生信息表、课程信息表和学生成绩表三个表之间的关系。
(7)将数据库文件和(2)中所要求建立的Word文件以其发送到指导教师的信箱,作为本次上机课考核的依据。
1、教学目的:(1)熟悉在在ACCESS数据库管理系统应用SQL结构化查询语言的方法;(2)熟练掌握SQL结构化查询语言中的命令,并能运用其实现对数据库(表)、记录的相关操作。
2、教学内容(1)使用CREATE命令在上次上级课程中所建立的数据库中建立表3.1-3.6中所示的数据表。
数据表中的字段的特征(类型、宽度等)为上次作业中WORD文档中所确定的结果(特别提示,表的名字不要重复)。
(2)将步骤(1)中所建立的各个数据表使用SQL命令删除。
(3)练习使用SQL结构化查询语言中的查询命令。
①查询所有教师的基本信息。
②查询“计算机系”全体教师的信息。
③查询“顾国为”老师的上课时间。
④查询全部核心课程的名称。
⑤查询“计算机文化”基础课程的平均成绩。
⑥查询学号为“970001”的同学的所选的课程的名称。
⑦查询选课两门以上的同学的学号。
⑧查询1978年12月31日之前出生的同学的信息。
数据库上机实验题目和答案

试用SQL的查询语句表达下列查询:1.检索王丽同学所学课程的课程号和课程名。
select Cno ,Cname from c where Cno in(select cno from sc where sno in (select sno from s where sname='王丽' ))2.检索年龄大于23岁的男学生的学号和姓名。
select sno,sname from swhere sex='男' and age>233.检索‘c01’课程中一门课程的女学生姓名select sname from swhere sex='女' and sno in(select sno from sc where cno='c01')4.检索s01同学不学的课程的课程号。
select cno from cwhere cno not in (select cno from sc where sno ='s01')5.检索至少选修两门课程的学生学号。
select sc.sno from s,scwhere s.sno=sc.snogroup by sc.snohaving count(o)>=26.每个学生选修的课程门数。
解法一:select so.sno sno,ount,s.snamefrom(select sc.sno sno,count(sc.sno) ccountfrom sc,swhere s.sno=sc.snogroup by sc.sno ) so,swhere s.sno=so.sno解法二:select sc.sno sno,s.sname,count(sc.sno) ccountfrom sc,swhere s.sno=sc.snogroup by sc.sno,sname7.求选修C4课程的学生的平均分。
数据库上机题目

上机时间7-18周周四上午3、4节实验第一部分数据库操作一:熟悉ACCESS环境(不用提交)下面的实验要在七周内完成实验1 建立学生、课程及成绩表,录入部分数据,并设计验证实体、参照及用户自定义完整性。
实验第二部分SQL语句VB数据库访问技术二:SQL语句及VB数据库访问技术(要提交)下面的SQL语句要求在“学生成绩管理”数据库进行测试。
下面的实验要在八至十二周内完成,要求提交纸质实验报告,实验报告包括:实验题目、SQL语句及查询结果的截图(查询的名称为自己的学号加姓名)。
【实验2_1】查询学生基本信息表中的所有信息。
SQL语句如下:【实验2_2】在学生基本信息表中查询学生的学号、姓名、性别和族别信息。
SQL语句如下:【实验2_3】从学生基本信息表中查询学生由哪些民族构成。
学生的族别有多行重复,要快速查询学生的民族构成,实际上就是对相同值的族别只需要显示一行,可使用DISTINCT关键字实现。
【实验2_4】从成绩表中查询学生成绩。
SQL语句如下:【实验2_5】从相关表中查询每一位学生的学号、姓名、课程名称、成绩。
【实验2_6】在课程信息表中查找“Delphi程序设计”课程的任课老师。
【实验2_7】查询少数民族学生的基本情况。
【实验2_8】检索1985年1月1日以后出生的女生基本信息。
【实验2_9】查询每位同学的课程门数、总成绩、平均成绩。
【实验2_10】从学生基本信息表中统计各民族学生人数。
【实验2_11】从学生基本信息表中统计汉族学生的人数。
【实验2_12】显示平均成绩大于等于80分以上的学生情况。
【实验2_13】查询学生成绩并将显示的结果按成绩升序排序。
SQL语句如下:【实验2_14】查询1985年出生的学生基本信息。
【实验2_15】查询不及格学生成绩信息。
查询不及格学生成绩信息,也就是查询0—59之间的学生成绩,可用BETWEEN关键字表示为:WHERE 成绩BETWEEN 0 AND 59。
数据库上机考试试题及答案

1下列说法中正确的是:( D )A 、 SQL 中局部变量可以不声明就使用B 、 SQL 中全局变量必须先声明再使用C 、 SQL 中所有变量都必须先声明后使用D 、 SQL 中只有局部变量先声明后使用;全局变量是由系统提供的用户不能自己建立。
2.哪个关键字用于测试跟随的子查询中的行是否存在( B )。
A.MOV B.EXISTSC.UNION D.HAVING3 .下列哪些语句用于创建存储过程( A )?A、CREATE PROCEDUREB、CREATE TABLEC、DROP PROCEDURED、其他5.在SQL中,SELECT语句的“SELECT DISTINCT”表示查询结果中 ( C )。
A.属性名都不相同B.去掉了重复的列C.行都不相同D.属性值都不相同语言集数据查询、数据操作、数据定义和数据控制功能于一体,语句INSERT、DELETE、UPDATA实现下列哪类功___A_____。
A. 数据查询B. 数据操纵C. 数据定义D. 数据控制Server 2000 采用的身份验证模式有( D )。
(A)仅Windows身份验证模式(B)仅SQL Server身份验证模式(C)仅混合模式(D)Windows身份验证模式和混合模式Server 2000 企业版可以安装在操作系统上。
( C )(A)Microsoft Windows 98(B)Microsoft Windows 2000 Professional(C)Microsoft Windows 2000 Server(D)Microsoft Windows XPServer是一个( C )的数据库系统。
(A)网状型(B)层次型(C)关系型(D)以上都不是语言中,删除一个视图的命令是( B )。
A. DELETEB. DROPC. CLEARD. REMOVE语言中,删除记录的命令是( A )。
A. DELETEB. DROPC. CLEARD. REMOVE14.以下触发器是当对[employee表]进行( D )操作时触发。
数据库系统上机实验题

数据库系统上机实验题一、学生学习系统的基本表学生:s(sno,sname,sex,age,dept);表中属性分别为:学号,姓名,性别,年龄和系名。
课程:c(cno,cname,tname);表中属性分别为:课号,课名,教师名。
选课:sc(sno,cno,grade);表中属性分别为:学号,课号和成绩。
要求:利用sql语句创建上面三个基本表,包括:主键,外键定义。
有针对性地输入一些实验数据。
二、利用sql语句,在上面三个基本表,顺利完成如下的功能1.查找学号2至10号学生的学号、姓名和系名。
2.查找女同学的人数。
3.搜寻学号2至10号学生中,女同学的人数。
4.查找男、女同学各有多少人(注:输出性别和人数)。
5.搜寻‘cs’系则中,男、女同学各存有多少人(备注:输入性别和人数)6.搜寻年龄在18至20岁之间的所有男同学的学号、姓名和系名。
7.搜寻所有学生报读课程的门数。
8.查找学号2至15号学生中,英语成绩超过80分的学生学号和姓名。
9.查找没有学习‘物理’课程的学生姓名和系名。
10.查找‘王明’同学所学课程的门数。
11.统计数据‘王明’同学所学各门课程的平均值分数。
12.统计数据英语成绩低于该课程平均值成绩的人数。
13.查找查找至少选修了‘王一’和‘王二’老师所授课程的学生学号与姓名。
14.查找‘cs’系比‘ma’系的学生年龄都小的学生姓名和系名。
15.统计每个学生的总分,输出学生的学号和总分,总分按降序排列。
16.查找学号比‘王一’同学大,而年龄比他小的学生学号、姓名和年龄。
17.查找年龄大于女同学的平均年龄的男同学的姓名与年龄。
18.查找只选修了一门课程的同学的学号和姓名。
19.搜寻‘cs’系则学生中,没报读‘王一’老师课程的学号、姓名和系名。
20.搜寻至少报读了3门课程的学生学号和姓名。
21.搜寻每门课程的最高分和最低分。
(备注:输入课号、最高分和最低分)22.使用查阅视图方式顺利完成21题的功能:利用视图方式的步骤:创建视图,例如:gdf(cno,max,min)属性:课号、最高分和最低分。
mysql数据库上机操作题
好的,以下是一个简单的MySQL数据库上机操作题:
1.创建一个名为"students"的数据库。
2.在"students"数据库中创建一个名为"student"的表,该表包含以下列:id
(整数类型,主键),name(字符串类型,长度为50),age(整数类型),gender(字符串类型,长度为10)。
3.向"student"表中插入以下数据:
id | name | age | gender
---|-------|-----|-------
1 | Alice | 20 | female
2 | Bob | 22 | male
3 | Carol | 21 | female
4.查询所有年龄大于等于21岁的学生信息。
5.更新Alice的年龄为21岁。
6.删除Bob的记录。
7.查询所有女生的信息。
8.将Carol的性别更改为"male"。
9.查询所有年龄为21岁的学生信息。
10.删除所有年龄为21岁的学生信息。
请根据以上要求在MySQL数据库中进行操作,并给出相应的SQL语句。
数据库系统原理上机操作样题及答案
数据库系统原理上机操作样题一、某物流公司数据库包含以下5个关系:快递员C(Cno,Cname,Cage,Csalary),分别为快递员编号、快递员姓名、快递员年龄和快递员底薪。
包裹信息P(Pno,Pfrom,Pto,Preceiver,Ptel,Pstatus),分别为物流号、寄出地址、收货地址、收件人姓名、收件人联系方式和包裹状态。
仓库W(Wno,Wname,Waddress),分别为仓库编号、仓库名和仓库地址。
配送D(Cno,Pno,Dtime),分别为快递员编号、物流号和配送时间。
存储S(Wno,Pno),分别为仓库编号和物流号。
其中C由Cno唯一标识,P由Pno唯一标识,W由Wno唯一标识,D由Cno和Pno唯一标识,S由Wno和Pno唯一标识。
其中Dtime格式为yyyy-MM-dd(统一格式可直接比较大小)1. 用SQL查询收件人姓名为“李四”的包裹物流号、配送员姓名和配送时间。
1.SELECT P.Pno,Cname,Dtime FROM C,D,P WHERE o=o AND P.Pno=D.Pno AND P.Preceiver='李四';2. 查询2017-4-1至2017-5-1(包括2017-4-1和2017-5-1这两天)配送包裹数量至少为100个的快递员的姓名、年龄和底薪。
2.SELECT ame,c.Cage,c.Csalary FROM c,dWHERE o = o AND (d.Dtime BETWEEN '2017-4-1' AND '2017-5-1')GROUP BY CnameHAVING COUNT(*) >= 100;3. 对所有年龄低于40的快递员,若底薪小于2500,则增加400工资,若大于等于2500,则增加200工资。
提示:SQL中的三目条件运算格式:IF(expr1,expr2,expr3),expr1为真则返回expr2的值,否则返回expr3的值。
数据库上机习题及答案
数据库上机习题及答案 Revised by Liu Jing on January 12, 2021数据库及应用复习题一、设计题有一个[学生课程]数据库,数据库中包括三个表:学生表Student由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,记为:Student(Sno,Sname,Ssex,Sage,Sdept) ,Sno 为关键字。
课程表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,记为:Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。
成绩表SG由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,记为: SG(Sno,Cno,Grade) (SNO, CNO)为关键字。
用SQL语言实现下列功能:1.建立学生表Student,其中学号属性不能为空,并且其值是唯一的。
2.向Student表增加“入学时间(Scome)”列,其数据类型为日期型。
3.查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列。
4.查询学习1号课程的学生最高分数、平均成绩。
5.查询与“李洋”在同一个系学习的学生。
6.将计算机系全体学生的成绩置零。
7.删除学号为05019的学生记录。
8.删除计算机系所有学生的成绩记录。
1.CREATETABLE Student(Sno CHAR(5) NOT NULL UNIQUE,Sname CHAR(20),Ssex CHAR(2),Sage INT,Sdept CHAR(15))2.ALTER TABLE Student ADD Scome DATETIME 3.SELECT Sno, GradeFROM SGWHERE Cno='3'ORDER BY Grade DESC4.SELECT MAX(Grade), AVG(Grade)FROM SCWHERE Cno='1'5.SELECT Sno, Sname, SdeptFROM StudentWHERE Sdept IN(SELECT Sdept FROM StudentWHERE Sname='李洋')6. UPDATE SGSET Grade=0WHERE Sno in( SELECT Sno FROM StudentWHERE Sdept = '计算机系')7.DELETE FROM StudentWHERE Sno='05019'8. DELETE FROM SGWHERE Sno in( SELECT Sno FROM StudentWHERE Sdept = '计算机系')二、设计题现有关系数据库如下:数据库名:教师数据库教师表(编号 char(6),姓名,性别,民族,职称,身份证号)课程表(课号 char(6),名称)任课表(ID,教师编号,课号,课时数)用SQL语言实现下列功能的sql语句代码:1. 创建上述三表的建库、建表代码(14分);要求使用:主键(教师表.编号,课程表.课号)、外键(任课表.教师编号,任课表.课号)、默认(民族)、非空(民族,姓名)、唯一(身份证号)、检查(性别、课时数),自动编号(ID)2. 将下列课程信息添加到课程表的代码(6分)课号课程名称100001 SQL Server数据库100002 数据结构100003 VB程序设计修改课号为100003的课程名称:Visual Basic程序设计删除课号为100003的课程信息3. 写出创建[任课表视图](教师编号,姓名,课号,课程名称,课时数)的代码;(4分)4. 写出创建[某门课任课教师]内嵌表值函数以及检索的代码;(6分)检索:所有代'SQL Server数据库'这门课程的老师姓名;5. 写出创建[统计课时数]:输出最大课时数、最低课时数、平均课时的存储过程以及执行代码;(6分)6.写出创建:计算某教师代课总课时,并将值返回的存储过程以及执行代码。
数据库上机考试题
是
操作步骤如下:(注,要求 age 为计算列,其值由 birthday 来求得。)
说明 工号 职工姓名 性别 出生年月
年龄
约束
不能晚于当前 系统日期
插入相应的数据(至少 2 条),工号的格式与自己的学号格式相同。要求其中有一条记录以自已的学号作为工号,并含自己 的名字,其它信息自拟,但不得包括同班其他同学信息。 给出 select * from employee 的查询结果:
操作步骤如下:
插入相应的数据(至少 2 条),要求其中有一条记录含自已的工号(与自己学号相同)和项目号,奖金额在$1000~$2000,另一 条记录也包含自己的学号,项目号自选,奖金额是该项目中的最高奖金额。其它信息自写,但不能包括其他同学的学号信 息。给出 select * from bonus 的查询结果:
的职工年龄小的职工的详细资料。 基本操作步骤:
9、使用企业管理器创建简单触发器 创建一个触发器 delete_project_XXXXXXXX(注:XXXXXXXX 为你的学号),在删除了一个项目之后,删除和这个项
目有关的全部信息。 创建步骤:
触发器的触发执行测试语句(T-SQL):
执行结果:
10、使用企业管理器创建索引 为 project 表创建一个非聚集索引 Xna_index_XXXXXXXX(注:索引名后要加上自己的学号),索引关键字为
3、创建表 bonus 表(记录按职工所参与的项目所发放的奖金的信息情况表)
bonus 表结构及其约束为:
表 3 bonus 表结构和约束
列名称
类型
宽度 允许空值
约束
主键
Employee_no
Char
8
否
Project_no
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、要求:
1、上机前写好题目答案,上机验证;
2、上机后写好实验报告(手写),内容是题目结果;
3、每个同学做的ACCESS程序,文件名为姓名学号,每班一个文件夹,压缩后发给我。
二、内容
实验一
在ACCESS环境下写出创建如下3张表的SQL语句:
(1)“图书表”结构如下:
书号:文本型,长度为6,主码;
书名:文本型,长度为30,非空;
第一作者:文本型,长度为10,非空;
出版日期:日期时间型;
价格:定点小数,小数部分1位,整数部分3位。
(2)“书店表”结构如下:
书店编号:文本型,长度为6,主码;
店名:文本型,长度为30,非空;
电话:文本型,8位长,每一位的取值均是0-9的数字;
地址:文本型,40位长;
邮政编码:文本型,6位长。
(3)“图书销售表”结构如下:
书号:文本型,长度为6,非空;
书号编号:文本型,长度为30,非空;
销售日期:小日期时间型,非空;
销售数量:整型,大于等于1;
主码为(书号,书店编号,销售日期);
其中“书号”为引用“图书表”的“书号”的外码;
“书店编号”为引用“书店表”的“书店编号”的外码。
实验二
请参照实验一设计一个图书借阅系统。
要求实现:
1、在ACCESS下设计相应的数据表。
2、在表中添加数据,比如“图书表”中添加几本图书信息等。
3、在ACCESS下设计表之间的关系。
4、在ACCESS下设计查询:根据书名模糊查询图书信息,根据销售时间查询销
售数据。
实验三
在ACCESS下写出创建Student、Course和SC表的SQL语句,并建立数据库1、Student:
Sno 学号文本长度7 主键
Sname 姓名文本长度10 非空
Ssex 性别文本长度2
Sage 年龄整数
Sdept 系文本长度20
2、Course:
Cno 课程号文本长度6 主键
Cname 课程名文本长度20
Credit 学分整数
Semster 学期整数
3、SC:
Sno 学号文本长度7 主键,引用student外码
Cno 课程号文本长度6 主键,引用Course外码
Grade 成绩实数
实验四
采用上文的Student、Course和SC表,添加相应的数据,在ACCESS下实现如下查询操作。
1、查询学生选课表中的全部数据。
2、查询计算机系的学生的姓名、年龄。
3、查询成绩在70-80分之间的学生的学号、课程名和成绩。
4、查询计算机系年龄在18-20之间且性别为“男”的学生的姓名、年龄。
5、查询课程号为“c01”的课程的最高的分数。
6、查询计算机系学生的最大年龄和最小年龄。
7、统计每个系的学生人数。
8、统计每门课程的选课人数和考试最高分。
9、统计每个学生的选课门数和考试总成绩,并按选课门数升序显示结果。
10、查询总成绩超过200分的学生,要求列出学号、总成绩。
11、查询选修了“c02”号课程的学生的姓名和所在系。
12、查询成绩80分以上的学生的姓名、课程名和成绩,并按成绩降序排列结果。
13、查询哪些学生没有选课,要求列出学号、姓名和所在系。
14、查询与VB在同一学期开设的课程的课程名和开课学期。
15、查询查询与李勇年龄相同的学生的姓名、所在系和年龄。
16、用子查询实现如下查询:
(1)查询选修了“c01”号课程的学生的姓名和所在系。
(2)查询数学系成绩80分以上的学生的学号、姓名、课程号、成绩。
(3)查询计算机系考试成绩最高的学生的姓名。
(4)查询数据结构考试成绩最高的学生的姓名、所在系、性别和成绩。
17、查询没有选修VB课程的学生的姓名和所在系。
18、查询计算机系没有选课的学生的姓名和性别。
19、将第2学期开设的所有课程的学分增加2分。
20、将信息系学生的“计算机文化学”课程的考试成绩加5分。