数据库实验二.三--交

合集下载

数据库原理及应用 数据库查询 实验二

数据库原理及应用 数据库查询 实验二

《数据库原理及应用》实验报告实验名称数据库查询实验室502 实验日期求选修了课程的学生学号。

Use 学生课程GoSelect 学号from 学生where 学号in (select 学号from where 课程号 is not null)求选修1102课程的学生学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同则按学号的升序排列。

Use 学生课程GoSelect 学号,成绩 from 课程,选课 where 课程.课程号and 课程号=1102 order by 成绩 desc,学号 asc求选修课程1102且成绩在80~90分之间的学生学号和成绩,并将成绩乘以系数0.8输出。

Use 学生课程GoSelect 学号,成绩*0.8 as 成绩 from选课 where 成绩 between 80 and求数学系或计算机系姓张的学生的信息。

Use 学生课程GoSelect * from 学生,课程,选课 where 学生.学号=选课.学号 and 课程号=课程.课程号and 姓名like ’张%’and (所在系=’数学’在系=’计算机’)求缺少了成绩的学生的学号和课程号。

Use 学生课程GoSelect 学号,课程号 from 选课 where 成绩 is null连接查询实验语句在“学生选课”数据库中实现下列数据连接查询操作。

查询每个学生的情况以及他(她)所选修的课程。

Use 学生课程GoSelect * from 学生,选课,课程 where 学生.学号=选课.学号课程号=课程.课程号求学生的学号、姓名、选修的课程名及成绩。

Use 学生课程GoSelect 学号,姓名,课程名,成绩 from 学生,选课,课程 where学生求选修1105课程且成绩为90分以上的学生学号、姓名及成绩。

Use 学生课程GoSelect 学号,姓名,成绩 from 学生,选课 where 学生.学号=选课and 课程号=1105 and 成绩>90查询每门课的选课人数。

数据库原理实验报告

数据库原理实验报告

实验一数据库管理系统软件的使用一、实验目的(1)认识几种常见的数据库管理系统,熟悉它们的使用界面;(2)熟练掌握建立数据库和表,向数据库输入数据、修改数据和删除数据的操作。

二、实验内容分别在Access 和SQL SERVER2000 中建立数据库并设计各表,输入多条实际数据,并实现数据的增、删、改操作。

三、实验步骤:分别在ACCESS数据库管理系统和SQL SERVR 2005环境下利用图形操作界面(非SQL语句)实现以下操作:1、创建用于学生管理数据库,数据库名为对表中的记录进行浏览、修改、删除操作。

本信息,课程信息和选课信息。

数据库XSGL包含下列3 个表:(l) student:学生基本信息。

(2)course:课程信息表。

(3)sc:学生选课表。

各表的结构分别如表1、表2和表3 所示。

表1 学生信息表:student表2 课程信息表:course表3 学生选课表:sc提示:在不使用SQL语句创建表的情况下,可通过ACCESS中的关系(菜单—工具—关系)和SQL SERVER 2005中的数据库关系图(数据库节点展开—数据库关系图)实现外键的创建。

外键字段和参照字段之间的数据类型以及长度要保持一致。

2、输入表中的记录分别在student表、course表和sc表中输入如下表中的记录:观察输入时有无提示错误,如果有如何修改,体会参照完整性的作用,弄清楚先输入那些表中记录,为什么?3、对表中的记录进行浏览、修改、删除操作。

实验二SQL语言(一) SQL定义语言目的:会用SQL语言进行基本表的结构的定义、修改、删除,会建立与删除索引;内容:用SQL语言进行基本表结构的定义、修改、删除,索引的建立和删除步骤:1、在SQL SERVER 2005中新建查询,建立到服务器的连接2、用SQL语言CREATE TABLE语句创建实验一中学生表student、课程表course 和选课表sc及其相应约束,具体约束如下:表1 学生信息表:student表2 课程信息表:course表3 学生选课表:sc3、向创建的表中输入数据,测试所创建的完整性约束是否起作用4、用SQL语言ALTER语句修改表结构;1) STUDENT表中增加一个字段入学时间scome,2)删除STUDENT表中sdept字段;3)删除创建的SC表中CNO字段和COURSE表CNO字段之间的外键约束;4)重建3)中删除的约束5、重新定义一个简单表,然后用SQL语言DROP语句删除该表结构;6、用SQL语言CREATE INDEX语句定义表STUDENT的SNAME字段的降序唯一索引;7、用SQL语言DROP语句删除索引;实验三SQL(二) SQL语言进行简单查询目的:掌握简单数据查询操作。

数据库实验报告实验步骤

数据库实验报告实验步骤

一、实验目的1. 熟悉数据库的基本概念和结构。

2. 掌握数据库的创建、修改、删除等操作。

3. 学会使用SQL语句进行数据的查询、插入、更新和删除。

4. 掌握数据库的备份和恢复。

二、实验环境1. 操作系统:Windows 102. 数据库管理系统:MySQL 5.73. 开发工具:MySQL Workbench三、实验步骤1. 创建数据库(1)打开MySQL Workbench,选择“新建连接”。

(2)输入主机名、用户名、密码等信息,点击“连接”。

(3)在左侧菜单栏选择“数据库”,点击“创建数据库”。

(4)在弹出的对话框中输入数据库名称,点击“创建”。

2. 创建表(1)在左侧菜单栏选择“数据库”,然后选择刚刚创建的数据库。

(2)点击“创建表”。

(3)在弹出的对话框中输入表名,设置字段类型、长度、约束等属性。

(4)点击“保存”完成表的创建。

3. 插入数据(1)选择创建的表,点击“插入数据”。

(2)在弹出的对话框中输入数据,点击“保存”。

4. 查询数据(1)选择创建的表,点击“查询”。

(2)在弹出的对话框中输入SQL语句,例如:SELECT FROM 表名 WHERE 条件。

(3)点击“执行”查看查询结果。

5. 更新数据(1)选择创建的表,点击“更新数据”。

(2)在弹出的对话框中输入SQL语句,例如:UPDATE 表名 SET 字段=值 WHERE条件。

(3)点击“执行”完成数据的更新。

6. 删除数据(1)选择创建的表,点击“删除数据”。

(2)在弹出的对话框中输入SQL语句,例如:DELETE FROM 表名 WHERE 条件。

(3)点击“执行”完成数据的删除。

7. 备份和恢复数据库(1)在左侧菜单栏选择“数据库”,然后选择要备份的数据库。

(2)点击“备份”。

(3)在弹出的对话框中设置备份文件路径和名称,点击“备份”完成备份操作。

(4)在左侧菜单栏选择“数据库”,然后选择“还原”。

(5)在弹出的对话框中设置还原路径和名称,点击“还原”完成数据库的恢复。

数据库管理与维护-实验手册

数据库管理与维护-实验手册

数据库管理与维护(SQL Server 2008)鲍丽红天水师范学院目录目录实验一SQL Server 2008安装 (1)实验二数据库创建和管理 (2)实验三数据库数据表的创建和管理 (3)实验四数据库的数据查询 (5)实验五Transact-SQL的编程实现 (6)实验六销售管理数据库中视图的应用 (7)实验七数据库中索引的应用 (8)实验八存储过程的应用 (9)实验九触发器的应用 (10)实验十数据库安全性管理 (11)实验十数据库的日常维护 (12)实验十二自动化管理(选做) (13)实验一SQL Server 2008安装【实训目的】1、了解安装SQL Server 2008 的硬件和软件的要求2、掌握SQL Server 2008 的安装方法3、掌握对象资源管理器与查询编辑器的使用【实训内容】1、在本地计算机上练习安装SQL Server2008 R2版本。

2、练习启动、暂停和关闭SQL Server2008的某一服务器。

实验二数据库创建和管理【实训目的】1、掌握数据库创建的方法2、掌握数据库扩容和收缩的方法3、掌握查看数据库信息方法4、掌握数据库的分离和附加的方法【实训内容】1、创建了一个library数据库,该数据库的主数据文件逻辑名称为Library_data,物理文件名为Library.mdf,初始大小为10MB,最大尺寸为无限大,增长速度为10%;数据库的日志文件逻辑名称为Library_log,物理文件名为Library.ldf,初始大小为3MB,最大尺寸为5MB,增长速度为1MB。

2、对library数据库进行扩容,添加一个5 MB的数据文件和一个5MB的事务日志文件。

3、对数据库library进行修改,将事务日志文件的大小增加到15MB,将数据文件library1和library2分别增加到15MB和30MB。

同时增加两个文件组,分别包含一个数据文件,逻辑文件名library3和library4,物理文件名为library2.ndf和library4.ndf,初始大小都为15MB,最大尺寸为无限制。

数据库操作实验报告

数据库操作实验报告

数据库操作实验报告数据库操作实验报告一、引言数据库是现代信息系统中重要的组成部分,它可以用来存储和管理大量的数据。

数据库操作是数据库应用开发中的基础,通过对数据库的增删改查操作,可以实现对数据的有效管理和利用。

本实验旨在通过实际操作,掌握数据库的基本操作方法和技巧。

二、实验目的1. 熟悉数据库的基本概念和术语;2. 掌握数据库的创建和表的设计方法;3. 熟练掌握数据库的增删改查操作;4. 实现对数据库的数据管理和查询功能。

三、实验环境本次实验使用的数据库管理系统为MySQL,操作系统为Windows。

MySQL是一个开源的关系型数据库管理系统,具有稳定性和高性能的特点。

四、实验步骤1. 数据库的创建在MySQL中,可以使用CREATE DATABASE语句来创建数据库。

首先打开MySQL命令行界面,输入以下命令:```CREATE DATABASE mydatabase;```其中,mydatabase为数据库的名称。

执行完毕后,即可创建一个名为mydatabase的数据库。

2. 表的设计在数据库中,表是用来存储数据的基本单位。

表由多个列组成,每个列包含一个特定的数据类型。

我们可以使用CREATE TABLE语句来创建表。

例如,我们创建一个名为students的表,包含学生的姓名、年龄和性别信息:```CREATE TABLE students (id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50),age INT,gender VARCHAR(10));```其中,id为主键,自动递增;name为字符串类型,最大长度为50;age为整数类型;gender为字符串类型,最大长度为10。

3. 数据的插入通过INSERT INTO语句可以向表中插入数据。

例如,我们向students表中插入一条记录:```INSERT INTO students (name, age, gender) VALUES ('Tom', 20, 'Male');```执行完毕后,即可向students表中插入一条记录,包含姓名为Tom,年龄为20,性别为Male的学生信息。

数据库系统实验报告广东工业大学

数据库系统实验报告广东工业大学

数据库系统实验报告⼴东⼯业⼤学数据库系统实验报告学院计算机学院专业计算机科学与技术班级级班学号姓名指导教师(2016 年12 ⽉)实验__⼀__题⽬数据库及基本表的建⽴实验__⼆__题⽬查询数据库_实验__三__题⽬创建和使⽤视图、索引、存储过程实验__四_题⽬⼩型数据库规划设计实验平台:SQL Sever 2005实验题⽬实验⼀数据库及基本表的建⽴⼀、实验⽬的1、掌握SQL SERVER 的查询分析器和企业管理器的使⽤;2、掌握创建数据库和表的操作;⼆、实验内容和要求1、分别使⽤SQL 语句、企业管理器(Enterprise Manager )创建数据库;2、使⽤SQL 语句、企业管理器(Enterprise Manager )创建数据库表;三、实验主要仪器设备和材料1.计算机及操作系统:PC 机,Windows 2000/xp ; 2.数据库管理系统:SQL sever 2000/2003/2005;四、实验⽅法、步骤及结果测试创建⼀个教学管理数据库SC ,其描述的信息有:学⽣信息、课程信息、教师信息、学⽣选课成绩、授课信息、班级信息、系部信息、专业信息。

创建:student 表(学⽣信息表)、course 表(课程信息表)、teacher 表(教师信息表)、student _course 表(学⽣选课成绩表)、teacher_course 表(教师上课课表)等。

1、创建数据库:确定数据库名称;数据库⽤于学⽣管理,命名为SC确定数据库的位置;要求:数据⽂件和⽇志⽂件分别存储在E 盘⾃⼰的⽬录下。

确定数据库的⼤⼩;根据实际的数据量确定数据⽂件的初始⼤⼩为30MB ,⽇志⽂件的初始⼤⼩为3MB 。

确定数据库的增长;根据实际情况,确定数据⽂件按20%增长,⽇志⽂件按1MB 增长。

(1)、利⽤查询分析器(Query Analyzer ),使⽤SQL 语句指定参数创建数据库;利⽤查询分析器,使⽤SQL 语句⽅式创建⽅式将下⾯各表建⽴到教学管理数据库中。

数据库原理实验

数据库原理实验

数据库原理实验数据库原理实验报告1. 实验目的本实验旨在通过实践操作,加深对数据库原理的理解,掌握数据库的基本操作和常用操作,培养数据库设计和管理的能力。

2. 实验环境和工具- 操作系统:Windows 10- 数据库管理系统:MySQL- 编程语言:Python- 开发工具:PyCharm3. 实验内容3.1 数据库的创建和删除在MySQL中创建一个新的数据库,并在实验结束后删除该数据库,以保持实验环境的干净。

3.2 数据表的创建和删除在创建的数据库中,创建一个新的数据表,并设定表的字段(列)和类型,以及主键和外键约束。

在实验结束后,删除该数据表。

3.3 数据的插入和查询在创建的数据表中插入一些测试数据,并进行一些简单的查询操作,如根据条件查询,排序查询等。

3.4 数据的更新和删除修改已存在的数据,并删除不需要的数据,观察数据库的变化,并验证操作的正确性。

4. 实验过程及结果4.1 数据库的创建和删除在MySQL中执行如下SQL语句:CREATE DATABASE IF NOT EXISTS mydatabase;DROP DATABASE IF EXISTS mydatabase;结果:成功创建数据库mydatabase,并成功删除数据库mydatabase。

4.2 数据表的创建和删除在创建的数据库中执行如下SQL语句:USE mydatabase;CREATE TABLE IF NOT EXISTS mytable (id INT PRIMARY KEY,name VARCHAR(50),age INT,address VARCHAR(100));DROP TABLE IF EXISTS mytable;结果:成功创建数据表mytable,并成功删除数据表mytable。

4.3 数据的插入和查询在数据表中执行如下SQL语句:USE mydatabase;INSERT INTO mytable (id, name, age, address) VALUES (1, 'John', 20, '123 Main St');INSERT INTO mytable (id, name, age, address) VALUES (2, 'Amy', 25, '456 Park Ave');INSERT INTO mytable (id, name, age, address) VALUES (3, 'Mike', 30, '789 Broadway');SELECT * FROM mytable WHERE age > 20;结果:成功插入3条测试数据,并成功查询出年龄大于20的记录。

数据库实验报告全

数据库实验报告全

数据库实验报告全实验⼀实验⽬的1.熟悉SQL Server Management Studio(SSMS)的⼯作环境2.掌握使⽤和命令建⽴数据库的⽅法3.熟练掌握使⽤SSMS和T-SQL语句创建、修改和删除表。

4.熟练掌握使⽤SSMS和T-SQL语句插⼊、修改和删除表数据。

实验内容1.采⽤SQL Server Management Studio 、T-SQL语句两种⽅式创建产品销售数据库,要求:1)使⽤SSMS创建数据库CPXS_bak,数据⽂件初始⼤⼩为5MB,最⼤⼤⼩50MB,按5MB增长;⽇志⽂件初始为2MB,最⼤可增长到10MB,按2MB增长;其余参数取默认值。

2)⽤T-SQL语句创建数据库CPXS,数据⽂件的增长⽅式改为增长⽅式按10%⽐例增长,其余与CPXS_bak。

3)⽤T-SQL语句删除数据库CPXS_bak。

2.CPXS数据库包含如下三个表:1)产品(产品编号,产品名称,价格,库存量)2)客户(客户编号,客户名称,地区,负责⼈,电话)3)销售(产品编号,客户编号,销售⽇期,数量,销售额)三个表结构如资料中图3.1~图3.3所⽰,请写出创建以上三个表的T-SQL语句并在查询分析器中运⾏。

3.在SSMS中输⼊如资料中图3.4~图3.6的商品表、客户表和销售表的样本数据。

6.将CP表中每种商品的价格打8折。

7.将CP表中价格打9折后⼩于1500的商品删除。

⼆.实验步骤与结果(说明:要写出相关步骤和SQL语句,实验结果可以是运⾏画⾯的抓屏,抓屏图⽚要尽可能的⼩。

)1.1)使⽤SSMS创建数据库CPXS_bak效果图为2)⽤T-SQL语句创建数据库CPXS:CREATE DATABASE CPXSON PRIMARY(NAME='CPXS_DATA',FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\CPXS_DATA.MDF', SIZE=5MB,MAXSIZE=50MB,FILEGROWTH=10%)LOG ON(NAME='CPXS_LOG',FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\CPXS_LOG.LDF', SIZE=2MB,MAXSIZE=10MB,FILEGROWTH=2MB)3) DROP DATABASE CPXS_bak刷新数据库会看到CPXS_bak不存在2.1) USE CPXSGOCREATE TABLE产品(产品编号char(6)PRIMARY KEY,产品名称char(30)NOT NULL,价格float(8),库存量int,)2) USE CPXSGOCREATE TABLE客户(客户编号char(6)PRIMARY KEY,客户名称char(30)NOT NULL,地区char(10),负责⼈char(8),电话char(12))3)USE CPXSGOCREATE TABLE销售(产品编号char(6),客户编号char(6),销售⽇期datetime,数量int NOT NULL,销售额float(8)NOT NULL,CONSTRAINT pk_js PRIMARY KEY(产品编号,客户编号,销售⽇期))/*pk_js为约束名*/ 执⾏完上⾯的操作就能看见表已经添加进数据库中,如图所⽰:3. 打开表:在其中添加数据:4.1)USE CPXSINSERT INTO产品(产品编号,产品名称,价格,库存量) VALUES('200001','柜式空调','3000','200')2)USE CPXSINSERT INTO产品(产品编号,产品名称,价格,库存量) VALUES('200002','微波炉','1000','100')3)USE CPXSINSERT INTO产品(产品编号,产品名称,价格,库存量) VALUES('200003','抽油烟机','1200','50')可以看见图中的产品表增加了如下内容:5.USE CPXSALTER TABLE产品Add产品简列varchar(50)6. USE CPXSUPDATE产品set价格=价格*0.87. USE CPXSDELETE产品WHERE价格*0.9<1500三.实验中的问题及⼼得(说明:此处应写明此次实验遇到的问题有哪些,如何解决的,不能够空。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库实验二.三--交
山东工商学院
《数据库》实验指导及报告书 2013 / 2014 学年第 2 学期
姓名:

班级:
指导教师:
信电学院
2014
实验二表的简单查询
首先建好一个教师表(如下表)。

然后在此基础上依次进行各种简单查询。

teach er表
教工号姓名家庭
住址
电话职

工资所在
教研

211 1 朱辉

连云
港市
58176
93



5800 计算
机软

211 2 单建

连云
港市
58176
92


4900 计算
机网

211 3 赵启

连云
港市
58176
93



4800 计算
机网

211 4 胡云连云
港市
58176
92


3500 计算
机软

211 5 葛庆

连云
港市
58176
94


3500 计算
机体
系结

1.基本查询
(1)打开查询分析器,从teacher表中分别检索出教师的所有信息
(2)查询teacher表中教工号、姓名和职称。

2.查询时改变列标题的显示
从teacher表中分别检索出教师教工号、姓名、家庭住址信息并分别加上‘教师姓名’、‘教工号’、‘家庭住址’等标题信息
3.基于WHERE语句进行数据查询
⑴基于比较条件。

从teacher表中查询出教工号小于2130的教师资料。

⑵基于BETWEEN语句。

从teacher表中查询出教工号界于2100和2130之间的教师资料。

⑶基于IN子句的数据查询。

从teacher表中查询出职称为“教授”或“副教授”的教师的教工号、教师姓名、职称及家庭住址。

语句如下:
⑷基于LIKE子句的查询。

从teacher表中分别检索出姓赵的教师的资料
4.使用TOP关键字查询。

分别从teacher中检索出前2条及前面67%的教师的信息。

5.使用DISTINCT关键字查询。

从teacher表中检索出教师的职称并且要求显示的职称不重
复。

6.用计算列查询。

将teacher表中各教师的姓名、教工号及工资按95%发放的信息,将工资按95%发放后列名该为‘预发工资’。

7.使用ORDER BY语句对查询的结果进行排序
使用ORDER BY语句可以对查询的结果进行排序,ASC、DESC分别是升序和降序排列的关键字,系统默认的是升序排列。

从teacher表中查询工资大于4500的教师的教工号、姓名,并按升序排列。

实验三多表查询和子查询
一、实验目的和要求
1.了解查询的概念和方法;
2.掌握查询分析器的使用方法;
3.掌握SELECT语句在单表查询中的应用;4.掌握复杂查询的使用方法;
5.掌握多表连接的方法;
6.掌握SELECT语句在多表查询中的应用;7.掌握子查询语句。

二、实验内容和步骤
(一)多表查询
数据库的各个表中存放着不同的数据,用户经常需要用多个表中的数据来组合提炼出所需要的信息,如果一个查询需要对多个表进行操作,就称为联表查询,联表查询的结果集或结果表称为表之间的连接。

联表查询实际上是通过各各表之间共同列的关联来查询数据的,它是关系数据库查询最基本的特征。

按照下表所示,分别在数据库test中构造student、course和student_course三张表,并写
入记录。

Student表
列名称类型宽度允许
为空
缺省

主键
学号Char 8 否是
学生姓名Nvarc
har
8 否
性别char 2 否年龄Smalli
nt

班级

Char 6 否
入学时间Smalld
atetim
e

家庭住址Nvarc
har
40 是
Course表:
列名称类型宽度允许
为空
缺省值主键
课程

char 10 否是
课程名称Nvarc
har
20 否
课程总学时Tinyin
t

课程学分Tinyin
t

Student_course表
列名称类型宽度允许
为空
缺省值主键
课程

Char 10 否是
学号Char 8 否是
成绩Tinyin
t

1.进行多表查询
从student、course和student_course三张表中检索选修了课程的学生的学号、姓名、课程号、课程名及成绩。

2.用GROUP子句进行查询
如果要在数据检索时对表中数据按照一定条件进行分组汇总或求平均值,就要在SELECT语句中与GROUP BY子句一起使用集合函数。

使用GROUP BY子句进行数据检索可得到数据分类的汇总统计、平均值或其他统计信息。

(1)使用不带HAVING的GROUP BY子句。

汇总出student_course表中的学生的学号及总成绩
⑵使用带HAVING 的GROUP BY子句。

汇总出student_course表中总分大于450分的学生的学号及总成绩
(二)子查询
1.使用IN或NOT IN关键字
使用IN关键字查询出‘jk1’‘dx2’‘dx1’班所有男生的学号、课程号及相应的成绩
2. 使用EXISTS 或NOT EXISTS关键字。

使用EXISTS关键字查询出‘jk1’班选修‘数据结构’课程的学生的学号、姓名;使用NOT EXISTS查询出‘jk1’班没有选修‘数据结构’课程的学
生的学号、姓名。

(2)命令:
select 学号,学生姓名
from student
where 班级号='jk1'
and not exists
(
select *
from course,student_course
where student.学号=student_course.学号and course.课程号=student_course.课程号and 课程名称='数据结构'
)
结果:。

相关文档
最新文档