实验三数据库简单操作

合集下载

SQL实验三数据的更新操作和视图实验报告

SQL实验三数据的更新操作和视图实验报告

实验三数据的更新操作和视图本实验需要2学时。

一、实验目的1、掌握视图的创建、修改和删除操作。

2、掌握数据库数据更新(增加、修改、删除)操作。

二、实验内容和步骤1、视图(1)建立名为UV_SC的视图。

该视图可以让我们看到每个学生的姓名、选修课程名和成绩。

(2)利用UV_SC视图,查看平均成绩在80分以上的学生姓名。

(3)建立名为UV_Course的视图,该视图显示每门课的课程名和选修该课程的学生人数。

(4)修改视图UV_Course,在视图中增加一列,显示选修该课程所有学生的平均成绩。

(5)建立名为UV_IS_Depart的视图。

该视图可以用来查看“信息系”的学生的学号、姓名、年龄和系名。

并保证对该视图的修改满足系名为信息系的条件。

(6)建立名为UV_Student的加密视图。

该视图可以用来查看每个学生选修的课程门数和平均成绩。

(7)利用UV_Student视图,查询平均成绩在80分以上的学生学号。

(8)能否利用视图UV_Student,修改某个学生的平均成绩?(9)删除视图UV_Student。

2、数据更新(1)向STUDENT表增加如下记录:(3)建立与表STUDENT 同结构的空表STUD。

然后利用INSERT命令把表STUDENT中年龄大于19的学生记录添加到表STUD。

(注意:可以使用select into语句实现同结构空表的创建,再使用insert命令插入记录;或者使用单条select into语句实现等同的功能)(4)为“ 95002”的学生增加选修“操作系统”和“数据结构”这两门课的选课记录。

(5)把课程名为“操作系统”的成绩从成绩表SC中删除。

(试用三种方式完成)(6)将女生的成绩提高10%。

(试用三种方式完成)(7)如果学生“张三”的数据结构的成绩低于65,则加上10分。

(8)将成绩最低的学生的成绩加上10分。

(9)将前3名成绩最高的学生的成绩减去10分。

(10)为没有选课的学生自动增加选修“01”课程的选课记录。

数据库实验三

数据库实验三

计算机与信息学院实验报告系:专业:年级:姓名:学号:22 实验室号计算机号22 实验时间:2013年10月29日指导教师签字:成绩:报告退发(订正、重做)实验名称:(三)数据库的定义实验一、实验目的和要求(1)掌握SQL Server查询分析器的使用方法,加深对SQL和Transact-SQL语言的查询语句的理解。

(2)熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。

(3)熟练掌握数据查询中的分组、统计、计算和组合的操作方法。

二、实验内容和原理1. 基本操作实验用Transact-SQL语句表示下列操作.在学生-课程库中实现其数据查询操作:(1)求数学系学生的学号和姓名。

(2)求选修了高等数学的学生学号、姓名和成绩。

(3)求选修C1课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。

(4)获选修课程C1且成绩在80~90分之间的学生学号、姓名及成绩,并将成绩乘以系数0.8输出。

(5)求数学系或计算机系姓张的学生的信息。

(6)求缺少了成绩的学生的学号和课程号。

(7)求C1课程的成绩高于张三的学生学号和成绩。

(8)求其他系中比计算机系学生年龄都小的学生。

(9)查询选修了全部课程的学生的姓名。

(10)求至少选修了学生“张三”所选修的全部课程的学生学号和姓名。

(11)查询每一门课的间接先行课(即先行课的先行课)。

在图书-图书库中实现其查询操作。

(1)查找这样的图书类别:要求类别中最高的图书定价不低于全部按类别分组的图书平均定价的2倍。

(2)求机械工业出版社出版的各类图书的平均定价,用GROUP BY表示。

(3)列出计算机类图书的书号、名称及价格,最后求出册数和总价格。

(4)列出计算机类图书的书号、名称及价格,并求出各出版社这类书的总价格,最后求出全部册数和总价格。

(5)查询计算机类和机械工业出版社出版的图书。

(6)在图书-借阅库中实现其查询操作:将计算机类的书存入永久的计算机图书表中,将借书日期在1999年以前的借阅记录存入临时的超期借阅表。

数据库实验三 数据库连接与登陆

数据库实验三 数据库连接与登陆

数据库实验三数据库连接与登陆在当今数字化的时代,数据库成为了信息存储和管理的核心工具。

对于学习和研究数据库技术的我们来说,掌握数据库的连接与登陆是至关重要的基础技能。

本次实验的重点就是深入探索数据库连接与登陆的相关知识和操作。

首先,我们来了解一下为什么数据库连接与登陆如此重要。

简单来说,数据库就像是一个巨大的仓库,里面存放着各种各样有价值的数据。

而要能够访问和使用这些数据,就必须先建立与数据库的连接,并通过正确的登陆验证身份,以获取相应的权限。

这就好比你要进入一个宝库,得先找到门,然后用正确的钥匙打开它。

在进行数据库连接与登陆之前,我们需要准备一些必要的条件。

第一,当然是要有一个可用的数据库服务器。

这可以是本地安装的数据库软件,比如 MySQL、Oracle 等,也可以是远程的数据库服务提供商提供的服务器。

第二,要知道数据库的相关信息,比如服务器的地址、端口号、数据库名称、用户名和密码等。

这些信息就像是打开宝库的密码和地图,缺一不可。

接下来,我们以常见的 MySQL 数据库为例,来看看具体的连接和登陆过程。

首先,打开数据库管理工具,比如 MySQL Workbench。

在工具的界面中,会有一个专门的区域用于输入连接信息。

在这里,我们依次填入服务器的地址,如果是本地服务器,通常是“localhost”;端口号,默认是 3306;数据库名称,这是我们要连接的具体数据库;用户名和密码,这是用于验证身份的关键信息。

输入完这些信息后,点击“连接”按钮,数据库管理工具就会尝试与数据库服务器建立连接。

如果一切顺利,我们就成功登陆到了数据库,可以开始进行各种操作,比如查询数据、插入数据、修改数据、删除数据等。

但如果出现连接失败的情况,那就需要仔细检查输入的信息是否正确,或者查看数据库服务器是否正常运行,是否存在网络问题等。

在实际应用中,数据库连接与登陆的方式并不仅仅局限于通过数据库管理工具。

还可以通过编程语言来实现,比如 Python、Java 等。

数据库原理实验报告(3)实验三数据表的创建与管理实验

数据库原理实验报告(3)实验三数据表的创建与管理实验

南京晓庄学院《数据库原理与应用》课程实验报告实验三数据表的创建与管理实验所在院(系):数学与信息技术学院班级:学号:姓名:1.实验目的(1)理解SQL Server 2005常用数据类型和表结构的设计方法。

理解主键、外键含义,掌握建立各表相关属性间参照关系的方法。

(2)熟练掌握使用SQL Server Management Studio图形工具创建表,删除表,修改表结构,插入及更新数据的方法。

(3)熟练掌握使用Transact-SQL语句创建表,删除表,修改表结构,插入及更新数据的方法。

2.实验要求基本实验:(1)在实验二所创建的“TM”数据库中合理设计以下各表逻辑结构:学生信息(学号,姓名,性别,籍贯,出生日期,民族,学院/系别号,班级号)课程信息(课程号,课程名称,课程所属模块,课程类别,学分,学时)学习信息(学号,课程号,考试成绩,平时成绩)院系信息(院系号,院系名称)要求确定各个字段的名称、类型、是否有默认值,是否主键等信息。

(2)依据你所设计的表结构,使用SQL Server Management Studio图形工具在“TM”数据库中创建学生信息表和课程信息表,并试验在图形界面中修改表结构,删除数据表,输入并更新数据的方法。

(3)依据你所设计表结构,使用Transact-SQL语句创建学习信息表和院系信息表,并试验使用T-SQL语句修改表结构,删除数据表,插入和更新数据的方法。

(4)找出已创建各表之间相关属性的参照关系,并在相关表中增加引用完整性约束。

(5)按要求完成实验报告。

扩展实验:(1)在“TM”数据库中补充设计以下各表结构:教师信息(教师号,姓名,性别,出生日期,学历,学位,入职时间,职称,院系号)授课信息(教师号,课程号,学期)班级信息(班级号,班级名称,专业号)专业信息(专业号,专业名称,学制,学位)图书信息(图书号,书名,作者,出版社,出版日期,册数,价格,分类)借书偏息(学号,图书号,借出时间,归还时间)奖励信息(学号,奖励类型,奖励金额)(2)设计并实现各表之间相关属性的参照关系。

实验三 数据库和数据表的创建

实验三 数据库和数据表的创建

实验三创建数据库和数据表一、实验目的1. 掌握使用SQL Server Management Studio创建数据库的方法与步骤2. 掌握创建数据库的SQL 语句3、掌握使用SQL Server Management Studio创建数据表的方法与步骤4、掌握创建数据表的SQL 语句背景知识在SQL Server中,数据库是由数据库文件和事务日志文件组成的。

一个数据库至少应包含一个数据库文件和一个事务日志文件。

数据库文件是存放数据库数据和数据库对象的文件。

一个数据库可以有一个或多个数据库文件,当有多个数据库文件时,有一个文件被定义为主数据库文件,扩展名为.mdf,它用来存储数据库的启动信息和部分或全部数据,一个数据库只能有一个主数据库文件。

其它数据库文件被称为次数据库文件,扩展名为.ndf,它主要用来存储除主数据文件外的所有数据文件。

一个数据库可以没有次数据库文件,但也可以同时拥有多个次数据库文件。

事务日志文件是用来记录数据库更新情况的文件,扩展名为.ldf。

它包含恢复数据库所需的所有日志信息。

每个数据库必须至少有一个日志文件。

文件组是将多个数据库文件集合起来形成的一个整体。

每个文件组有一个组名。

文件组分为主文件组和用户定义文件组。

一个文件只能存在于一个文件组中,一个文件组也只能被一个数据库使用。

注:事务日志文件不属于任何文件组。

二、实验内容与步骤2.1 操作内容:●创建一个名为“testdb”数据库:(1)包含一个数据文件,逻辑文件名“testdb_data”,磁盘文件名‘d:\testdb-data.mdf’,文件初始容量为5MB,最大容量为15MB,文件容量递增值为1MB;(2)包含一个事务日志文件,逻辑文件名为‘d:\testdb_log’, 磁盘文件名“testdb_log.ldf”,文件初始容量为5MB,最大容量为10MB,文件容量递增值为1MB;●对数据库作如下修改:(1)添加一个数据文件,逻辑文件“testdb2_data”,磁盘文件名“d;\testdb2_data.ndf”,文件初始容量为1MB,最大容量为6MB,文件容量递增值为1MB;(2)将事务日志文件的最大容量增加为15MB,递增值改为2MB;在testdb数据库下创建一个members(会员表),表结构如下:表1 表Members(会员表)2.2 实验步骤:方式一:使用SQL Server Management Studio创建和修改数据库1、创建数据库1. 单击“开始”,指向“程序”,指向“Microsoft SQL Server 2005”,然后单击“SQL Serv erManagement Studio”。

实验3 数据库 数据操作

实验3 数据库 数据操作

选择导入目的对话框
选择源表、目的表
实验3
数据操作
2.在企业管理器中录入数据至数据表T中 在企业管理器中录入数据至数据表T 把左下表中的内容录入数据至表T。
待录入到表 T的数据 待插入表C的数据 语句插入数据至数据表C 3.使用INSERT INTO语句插入数据至数据表C中 使用INSERT INTO语句插入数据至数据表 把右上表中的数据插入课程表C。 在查询分析器中输入下面SQL语句,把表中第一行数据插入表C: 在查询分析器中输入下面SQL语句,把表中第一行数据插入表C: SQL语句 USE jxsk VALUES( C1 C1’, 程序设计 程序设计’, 60 60’) INSERT INTO C VALUES(‘C1 ,‘程序设计 ,‘60 )
格式的S_EXCEL.xls Excel 格式的S_EXCEL.xls 数据文件内容
实验3
【实验步骤】 实验步骤】
数据操作
1.利用导入导出向导把Excel文件S_EXCEL.xls中的数据导入数据表S中 ቤተ መጻሕፍቲ ባይዱ用导入导出向导把Excel文件S_EXCEL.xls中的数据导入数据表S Excel文件S_EXCEL.xls中的数据导入数据表
实验3
数据操作
"TNO" "T1" "T1" "T2" "T3" "T3" "T4" "T4" "T5" "T5"
"CNO" "C1" "C4" "C5" "C1" "C1" "C2" "C3" "C5" "C7"

实验三 数据库中的数据查询及视图操作实验报告

实验三  数据库中的数据查询及视图操作实验报告

实验三数据库中的数据查询及视图操作实验报告实验三数据库中的数据查询及视图操作实验报告一、实验目的本实验的主要目的是熟悉数据库中的数据查询和视图操作。

通过本实验,我们可以掌握使用SQL语句进行数据查询和创建视图的方法,进一步提高对数据库的操作能力。

二、实验环境本实验使用MySQL数据库管理系统,并在Windows操作系统下进行实验。

三、实验内容本实验主要包括以下内容:1. 数据查询:使用SELECT语句查询数据库中的数据,并进行排序、过滤和聚合操作。

2. 视图操作:创建和删除视图,以及对视图进行查询和更新操作。

四、实验步骤与结果1. 数据查询首先,我们需要连接到数据库,并选择要查询的表。

假设我们选择的表名为"students",包含以下字段:学号、姓名、性别、年龄、班级。

a. 查询所有学生的信息:```sqlSELECT * FROM students;```执行以上SQL语句后,我们可以得到所有学生的信息,包括学号、姓名、性别、年龄和班级。

b. 查询男生的信息:```sqlSELECT * FROM students WHERE 性别 = '男';```执行以上SQL语句后,我们可以得到所有性别为男的学生的信息。

c. 查询年龄小于20岁的学生的姓名和班级:```sqlSELECT 姓名, 班级 FROM students WHERE 年龄 < 20;```执行以上SQL语句后,我们可以得到年龄小于20岁的学生的姓名和班级。

d. 查询学生按照年龄降序排列的结果:```sqlSELECT * FROM students ORDER BY 年龄 DESC;```执行以上SQL语句后,我们可以得到按照年龄降序排列的学生信息。

e. 查询学生按照班级分组,并统计每个班级的人数:```sqlSELECT 班级, COUNT(*) AS 人数 FROM students GROUP BY 班级;```执行以上SQL语句后,我们可以得到每个班级的人数统计结果。

实验3 MySQL数据库安全性与完整性控制实验实训报告

实验3 MySQL数据库安全性与完整性控制实验实训报告

数据库运维课程实训报告实验3 数据库安全性与完整性控制实验实训名称:成绩教师评语教师签字日期学生姓名学号一、实训目标练习安全性授权方法、安全性和完整性查看的操作方法。

二、实训内容【实验3-1】使用create user创建用户,创建单个用户teacher,创建两个用户teacher1和student。

【实验3-2】通过直接操作MySQL用户表创建用户,创建单个用户teacher2,创建两个用户teacher3和student2(请注意,新版的MySQL可能不支持使用此方法创建新用户)。

【实验3-3】新建一个terminal窗口,使用mysql –u –h -p方式登录teacher。

【实验3-4】再次新建一个terminal窗口,使用mysql –u –h -p方式登录student。

【实验3-5】使用GRANT语句对用户student赋予所有数据库所有表的insert权限和update权限。

【实验3-6】使用GRANT语句对用户student赋予school数据库所有表的select权限。

【实验3-7】使用GRANT语句对用户student赋予school数据库stuinfo表的create 访问权限。

【实验3-8】使用GRANT语句对用户student赋予school数据库stuinfo表的stuno 列上的select访问权限。

【实验3-9】使用GRANT语句对用户student赋予s所有数据库所有表的select访问权限,并设定student每小时最多可使用select操作访问数据库的次数。

【实验3-10】查看表INFORMATION_ER_PRIVILEGES中有关student的信息,查看user表中的内容信息。

【实验3-11】查看表INFORMATION_SCHEMA.SCHEMA_PRIVILEGES,找到student在school数据库下拥有的权限。

【实验3-12】查看表INFORMATION_SCHEMA.TABLE_PRIVILEGES,查找school数据库中stuinfo数据表相关的表权限。

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

重庆理工大学数据库精品课程教辅材料
实验报告册
课程:数据库系统概论
班级:
学号:
姓名:
重庆理工大学
计算机科学与工程学院
2016年3月
实验三
一实验目的
利用查询分析器用SQL语言定义基本表、索引并进行相关操作。

二实验软件平台
SqlServer
三实验内容
(一)利用查询分析器在表中插入数据
打开在实验一中建立的“学生课程”数据库,利用SQL语句在“SCDB”数据库中的student、course、sc表中插入数据;
student表的内容:
SNO SNAME SSEX SAGE SDEPT
95001李勇男20CS
95002刘晨女19IS
95003王敏女18MA
95004 张立男19 IS
95005 陈锋男21 CS
course表的内容
CNO CNAME CPNO CREDIT
1数据库54
2数学NULL 2
3信息系统14
4操作系统 6 3
5数据结构7 4
6 数据处理NULL 2
7 PASCAL语言 6 4
sc表的内容
SNO CNO GRADE
95001192
95001265
95001388
95002290
95002380
95003 3 93
95003 4 85
95003 5 95
(二)修改表中的数据
在插入数据后的三张表student、course、sc中进行相关的更新操作:
1、将student表中‘李勇’的名字改为‘李明’;
2、将student表中‘王敏’的年龄改为20岁;
3、将所有学生的年龄增加1岁;
4、修改学生的学号‘95002’为‘95007’,注意会有什么情况发生?为什么?
update s
set sno='95007'
where sno='95002'
与约束条件冲突,因为sno是主键,在sc表中被关联。

改动主键会报错。

5、把选修了“2”号课程,且成绩低于70分的成绩提高5%;
update sc2
set grade=grade*(1+0.05)
where grade<70 and
cno= 2
6、将“CS”系全体学生的成绩置零;
update sc2
set grade= 0
where'cs'=
(select sdept
from s
where s.sno=sc2.sno)
(三)删除表中的数据
1、把选修了“2”号课程,且成绩低于70分的学生的选课记录删除掉;
delete from sc2
where cno='2'and
grade< 70
2、删除学号为“95003”的学生信息,注意会有什么情况发生?为什么?
delete from s
where sno='95003'
无法完成删除。

因为snow是主键。

3、删除"IS"系选修了"2"号课程的选课记录;
delete from sc2
where cno='2'and
'IS'=(select sdept
from s
where s.sno=sc2.sno)
4、删除“CS”系的全体学生的选课记录;
delete from sc2
where'CS'=
(select sdept
from s
where s.sno=sc2.sno)
5、删除student、sc整张表的数据,注意表之间的关系,删除的顺序。

delete from sc2
delete from s
五思考题
1.一个表
2.应该注意更新的数据的先后顺序
3.定义了主键的
收获与建议
为了加强课程建设、增强师生沟通,请您就本实验课程的主要收获和宝贵建议填写如下:
一主要收获:熟悉了对sql server 的使用能够运用一些基本的建立数据库和表的sql语句了
二您的建议。

相关文档
最新文档