数据库 实验三答案
- 格式:doc
- 大小:3.34 MB
- 文档页数:17
实验内容:实验一:数据库的操作使用Management Studio和sql语句分别完成以下操作:1.创建一个名为“SM”的数据库,数据文件初始大小为3MB,最大为50MB,数据库自动增长,增长方式按10%;日志文件初始大小为2MB,数据大小不受限制,按1MB增长。
create database smon(name='smdata',filename='e:\smdata.mdf',size=3,maxsize=50,filegrowth=10%)log on(name='smlog',filename='e:\smlog.ldf',size=2,maxsize=unlimited,filegrowth=1)2.修改数据库“SM”,将数据文件名改成“sm_data”,初始大小改成5MBalter database smmodify file( name='smdata',newname='sm_data',size=5)3.分别查看数据库“SM”,该数据库中的文件和文件组。
exec sp_helpfile smexec sp_helpfilegroup sm4.删除数据库“SM”。
drop database sm实验二:创建表1. 在数据库SM中创建学生表student,课程表course,选课表scstudent(sid,sno,clno,sname,ssex,sage,sbir)说明:sid int identity(1,1) 序号sno 为主关系键,为字符类型学号clno 字符类型,班级号sname 字符类型,并不为空ssex 字符类型,check的值的范围为男女sbir 日期类型出生日期sage int;use smcreate table student( sid int identity(1,1),sno char(10) constraint pk_st primary key,clno char(10),sname varchar(20) not null,ssex char(2) constraint ck_ssex check(ssex in('男','女')),sbir datetime,sage int)course(cno,cname,ccredits,ctno,cpno,ctime)说明:cno 字符类型,主关系键cname 字符类型,唯一键ccredits 学分,精确数值型,精确长度为2,小数位为1ctno ,cpno 字符类型ctime 整型create table course(cno char(4) constraint pk_c primary key,cname varchar(20) constaint uk_cname unique,ccredit decimal(2,1),ctno char(2),cpno char(4),ctime tinyint)sc(sno,cno,score)说明:sno+cno为主键,并且sno是student的外部键,cno是course的外部键。
数据库原理与应用实验报告三及答案
广东金融学院实验报告课程名称:数据库原理与应用实验编号及实验名称实验三数据库高级应用实验系别计科系姓名学号班级实验地点新电1101实验日期05月14日实验时数8指导教师同组其他成员无成绩一、实验目的及要求1、掌握SQLServer存储过程的定义和使用。
2、掌握SQLServer触发器的定义和使用。
二、实验环境及相关情况(包含使用软件、实验设备、主要仪器及材料等)1、计算机操作系统要求在windowsXP以上。
2、并要求SQLServer软件月日第3页共2页。
实验报告(三)专业:班级:学号:姓名:实验名称:数据库的简单查询实验报告内容:1、写出第182页实验3中的SQL语句(第5)7)11)13)16)18)19)20)21)题)。
5)查询全体学生的选课情况,其成绩列值都加5,并为各列设置中文的别名SELECT Sno '学号',Cno '课程号',Grade+5 '成绩' FROM Enrollment7)显示所有选课学生的学号,并去掉重复行。
SELECT DISTINCT Sno '学号' FROM Enrollment11)查询学生年龄不在20~30之间的学生学号、姓名、所在系。
SELECT Sno ,Sname,Sdept FROM Students WHERE Sage NOT BETWEEN 20 AND 30等价于:SELECT Sno ,Sname,Sdept FROM Students WHERE Sage<20 OR Sage>3013)查询既不是数学系、计算机系,也不是艺术系学生的学号、姓名。
SELECT Sno,Sname FROM StudentsWHERE Sdept NOT IN ('Math', 'Computer', 'Art')等价于:SELECT Sno,Sname FROM StudentsWHERE Sdept! ='Math' AND Sdept! = 'Computer' AND Sdept! = 'Art'16)查找姓名以S、D或J开头的所有学生的学号、姓名。
SELECT Sno,Sname FROM Students WHERE Sname LIKE '[SDJ]%'18)查询无考试成绩的学生的学号和相应的课程号。
SELECT Sno, Cno FROM Enrollment WHERE Grade IS NULL不等价于:SELECT Sno, Cno FROM Enrollment WHERE Grade =019)查询有考试成绩(即成绩不为空值)的学生的学号、课程号。
实验三:创建及管理数据表1、创建表依据数据表的结构创建相对应的数据表,表结构如下所示; 学生信息表(student )CREATE (sno char (9) PRIMARY KEY , sname char (8) NOT NULL, ssex char(2), sage int ,sdept varchar (20) )课程信息表(course )CREATE (cno char (4) PRIMARY KEY , cname varchar (20) NOT NULL, cpno char (4), ccredit int )选课信息表(sc )CREATE TABLE sc(sno char(9),cno char(4),grade int,Constraint PK_sno PRIMARY KEY(sno,cno))2.修改表结构1)在表student中增加新字段“班级名称(sclass)”字符类型为varchar(10);use studentALTER TABLE studentAdd sclass nvarchar(10)2)在表student中删除字段“班级名称(sclass)”;use studentALTER TABLE studentDrop column sclass3)修改表student中字段名为“sname”的字段长度由原来的6改为8;use studentALTER TABLE studentALTER COLUMN sname char(8)4)修改表student中ssex字段默认值为‘男’;use studentALTER TABLE studentadd default'男'for ssex5)修改表course中cname字段为强制唯一性字段;use studentALTER TABLE courseAdd constraint ix_course unique (cname)6)修改表sc中grade字段的值域为0-100;use studentALTER TABLE scAdd constraint CK_grade CHECK(grade between 0 and 100)7)删除数据表course的唯一性约束;use studentALTER TABLE coursedrop ix_course。
数据库原理及应用实验指导书 - 答案实验一:数据库管理系统的安装与配置问题一数据库管理系统(DBMS)是一种软件,用于管理和组织数据库。
它允许用户创建,读取,更新和删除数据库中的数据。
常见的数据库管理系统有MySQL,Oracle,SQL Server等。
问题二在实验室环境中,我们将使用MySQL作为我们的数据库管理系统。
以下是MySQL的一些常见特点: - 开源免费 - 跨平台支持 - 可扩展性强 - 有大型的用户社区和丰富的资源支持问题三MySQL的安装步骤如下: 1. 下载MySQL安装文件,可以从MySQL官方网站或者其他可信的下载源获取。
2. 运行安装程序,按照向导的指示进行安装。
3. 选择是否要安装MySQL 服务器和MySQL工具。
4. 设置密码以保护数据库的安全。
5. 完成安装程序并启动MySQL服务。
数据库是一个组织和存储数据的容器。
在关系型数据库中,数据以表的形式存储,每个表包含多个行和列。
每行代表一个记录,每列代表一个字段。
问题五关系型数据库管理系统(RDBMS)是一种DBMS,它使用结构化查询语言(SQL)来操作和处理数据。
常见的关系型数据库管理系统有MySQL,Oracle,SQL Server等。
问题六开放数据库连接(ODBC)是一种标准的数据库访问方法,它允许不同的应用程序通过统一的接口访问不同的数据库管理系统。
ODBC驱动程序充当应用程序和数据库之间的翻译器。
问题七在Windows系统中,ODBC数据源可以通过控制面板的“管理工具”来配置。
在数据源配置对话框中,可以添加,编辑和删除ODBC数据源。
在Windows系统中,可以使用ODBC接口库和ODBC驱动程序来连接和操作数据库。
具体步骤如下: 1. 加载ODBC接口库。
2. 初始化ODBC环境。
3. 建立数据库连接。
4. 执行SQL语句。
5. 关闭数据库连接。
6. 释放ODBC环境。
问题九ODBC接口库是一组API函数,用于连接和操作数据库。
最新国家开放大学电大《MySQL数据库应用》网络核心课实验训练3及4答案盗传必究本课程分为形成性考核和终结性末考两种考核形式,形成性考核占50% (满分100分),末考为网络考试占50% (满分100),其中形成性考核为完成课程网站上的形考作业任务,形考作业均为主观题,包括四个实训:实训一:在MYSQL创建数据库和表,25分;实训二:数据查询操作,25分;实训三:数据增删改操作,25分;实训四:数据库系统维护,25分。
实验训练3数据增删改操作答案:实验目的:基于实验1创建的汽车用品网上商城数据库Shopping,练习Insert、Delete. TRUNCATE TABLE. Update 语句的操作方法,理解单记录插入与批量插入、DELETE与TRUNCATE TABLE语句、单表修改与多表修改的区别。
实验内容:【实验3-1]插入数据(1)使用单记录插入Insert语句分别完成汽车配件表Autoparts、商品类别表category>用户表Client、用户类别表Clientkind、购物车表shoppingcart、订单表Order >订单明细表order_has_Autoparts评论Comment的数据插入,数据值自定;并通过select语句检查插入前后的记录情况。
INSERT INTO 目标表SELECT * FROM 来源表;insert into insertTest select * from insertTest2;INSERT INTO目标表(字段1,字段2,...)SELECT字段1,字段2, ... FROM来源表;(这里的话字段必须保持一致)insert into insertTest2(id) select id from insertTest2;INSERT INTO 目标表(字段1,字段2,...)SELECT 字段1,字段2,...FROM来源表WHERE not exists (select * from 目标表where目标表.比较字段=来源表.比较字段);1>.插入多条记录:insert into insertTest2(id, name )select id, namefrom insertTestwhere not exists ( select * from insertTest2where insertTest2. id=insertTest. id);2>.插入一条记录: insert into insertTest (id, name )SELECT 100, 'liudehua' FROM dualWHERE not exists ( select * from insertTest where insertTest. id = 100); (2)使用带Select 的Insert 语句完成汽车配件表Autoparts 中数据的批量追加;并通过select 语句检查插入前后的记录情况。
实验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语句,完成如下操作:(1)查询所有用户的用户ID和姓名。
select uid,namefrom [user](2)查询注年龄最小3位用户的用户ID,姓名和年龄。
select top 3(uid),name,datediff(yyyy,birthday,getdate()) agefrom [user]order by birthday desc(3)查询库存小于50本的所有书目信息。
select*from bookwhere stock<50(4)查询清华大学出版社的所有书目信息。
select*from bookwhere press='清华大学出版社'(5)查询价格在50-100元的所有的书名。
select titlefrom bookwhere price>50 and price<100(6)查询姓“张”或“王”或“李”且单名的学生的情况。
select*from [user]where name like'张%'or name like'李%'or name like'王%'and len(name)=2(7)查询所有书目的书名、出版社及价格,要求出版社升序排列,出版社相同时,按价格从高到底进行排序。
select title,press,pricefrom bookorder by press,price desc(8)查询所有有交易记录的用户ID。
select oidfrom [order]where state= 4二、数据汇总使用相应SQL语句,完成如下操作:(1)查询理工类书目的最高价格、最低价格及平均价格。
select max(price)max_price,min(price)min_price,avg(price)avg_price from bookwhere category = 1(2)查询所有理工类书目的库存总量。
实验3 SQL语言
一、实验目的
1、掌握SQL中运算符与表达式的使用。
2、掌握实用SQL语言查询数据库。
二、实验要求
1、所有的实验过程请严格按照实验内容的步骤进行。
2、对关键步骤截屏并复制到实验报告的相应位置。
三、实验设备、环境
设备:计算机
环境:WINDOWS XP、SQL SERVER 2000中文版
四、实验原理、方法
上机操作
五、实验内容
准备工作:还原学生成绩管理数据库;
注意:写SQL语句时,注意学生成绩管理数据库中表名称与字段名称的对应。
1、使用SQL查询分析器,对学生成绩管理数据库完成如下查询操作:
1)简单查询
(1)求数学系学生的学号与姓名。
(2)求选修了课程的学生学号。
(3)求选修C1课程的学生学号与成绩,并要求对查询结果按成绩的降序排列,如果成绩相同则按学号的升序排列。
(4)求选修课程0001且成绩在80~90之间的学生学号与成绩,并将成绩乘以系数0、8输出。
(5)求数学系或计算机应用系姓王的学生的信息。
(6)求缺少了成绩的学生的学号与课程号。
2)连接查询
(1)查询每个学生的情况以及她(她)所选修的课程。
(2)求学生的学号、姓名、选修的课程名及成绩。
(3)求选修0001课程且成绩为90分以上的学生学号、姓名及成绩。
3)嵌套查询
(1)求选修了0003的学生学号与姓名。
(2)求0001课程的成绩高于王军的学生的学号与成绩。
(3)求其她系中比计算机系某一学生年龄小的学生。
4)使用分组与函数查询
(1)求学生的总人数。
(2)求选修了课程的学生人数。
(3)求课程与选修0001的人数。
(4)求选修课超过3门课的学生学号。
2、设职工-社团数据库有三个基本表:
职工(职工号,姓名,年龄,性别)
社会团体(编号,名称,负责人,活动地点)
参加(职工号,编号,参加日期)
试用SQL语句表达下列操作:
1)定义职工表、社会团体表与参加表,注意主码与参照关系
2)为职工表、社会团体表与参加表天添加适量数据(可用企业管理器)。
3)建立下面两个视图:
社团负责人(编号,名称,负责人职工号,负责人姓名,负责人性别) ;
参加人情况(职工号,姓名,社团编号,社团名称,参加日期);
社团负责人(编号,名称,负责人职工号,负责人姓名,负责人性别) ;
参加人情况(职工号,姓名,社团编号,社团名称,参加日期);
4) 查找参加歌唱队或篮球队的职工号与姓名。
5)查找参加了全部社会团体的职工情况。
6)查找没有参加任何社会团体的职工情况。
7)查找参加了职工号为“0002”的职工所参加全部社会团体的职工号。
8)求每个社会团体的参加人数。
9)求参加人数最多的社会团体的名称与参加人数。
10)求参加人数超过2人的社会团体的名称与负责人。
2、设工程零件数据库中有四个基本表:
供应商(供应商代码,姓名,所在城市,联系电话)
工程(工程代码,工程名,负责人,预算)
零件(零件代码,零件名,规格,产地,颜色)
供应零件(供应商代码,工程代码,零件代码,数量) 试用SQL语句表达下列操作:
1)定义以上几个表,注意主码与参照关系。
2)为以上几个表添加适量数据(可用企业管理器)。
3)找出天津市供应商的姓名与电话。
4)查找预算在50000-100000元之间的工程的信息,并将结果按预算降序排列。
5)找出使用供应商S1所提供零件的工程号码。
6)找出工程项目J2使用的各种零件名称及其数量。
7)找出上海厂商供应的所有零件号码。
8)找出使用上海产的零件的工程名称。
9)找出没有使用天津产零件的工程号码。
10)把全部红色零件的颜色改为蓝色。
11)将由供应商S5供给工程代码为J4 的零件P6 改为由S3供应,并作其她必要的修改。
12)从供应商关系中删除S2的记录,并从供应商零件关系中删除相应的记录。
六、实验报告要求及记录、格式
1、实验报告为WORD文档,文件名为“学号+姓名、DOC”,如“88888888张三、DOC”。
2、实验报告的内容为实验指导书的内容:标题+截屏。
3、每个实验结束后一周内由每班学习委员收齐实验报告的电子版后压缩为一个名为“班
级+实验X、DOC“的RAR文件并上交,如“信管11实验1、rar”。
七、实验注意事项
实验过程中注意爱护计算机,实验完毕要按正常操作关闭计算机。
八、实验结果讨论、体会与收获。