数据更新、视图的创建与修改

一、实验目的

1、学会使用INSERT、UPDATE、DELETE等SQL语句进行数据更新;

2、学会使用CREATE、DROP等SQL语句创建和删除视图。

二、实验内容

1、在SQL Server Management Studio中使用INSERT、UPDATE、DELETE语句进行数据更新。

2、在SQL Server Management Studio中使用CREATE、DROP语句创建和删除视图。

三、实验步骤

1、利用SQL Server Management Studio在数据库S_C的三个表中分别插入以下数据:学生表S:


sno


sname


birthday


sdeptartment


tel


sex


J0401


李军


1985-2-12


计算机系


0576-85123464



J0402


刘晨


1986-5-22


数学系


0576-85123466



J0403


王敏


1986-4-28


计算机系


0576-85123464



J0404


张立


1984-9-8


计算机系


0576-85123464


课程表C:


cno


cname


teacher


pcno


C01


数据库


GUO


C03


C02


VB


LIU


C03


C03


计算机基础


LI


C04


数学


WANG


C05


数据结构


ZHANG


C03


C06


C语言


CHEN


C03

成绩表SC:


sno


cno


grade


J0401


C05


92


J0401


C06


85


J0401


C02


88


J0401


C01


90


J0402


C04


80


J0403


C02


76


J0404


C03


88

2、在查询窗口中:

1)选择数据库S_C,用INSERT语句向学生表S中插入一个新生记录(sno:J0405;sname:陈东;birthday:1987-5-3;sdeptartment:中文系;tel:0576-85123466;sex:女)。

Sql语句:

INSERT INTO S

VALUES(‘J0405‘, ‘陈东‘, ‘1987-5-3‘, ‘中文系‘, ‘0576-85123466‘, ‘女‘)

2)把课程名为VB的成绩从基本表SC中删除。

Sql语句:

DELETE FROM SC WHERE cno =

(SELECT cno FROM C WHERE cname = ‘VB‘)

3)把女生的成绩提高10%。

Sql语句:

UPDATE SC

SET SC.grade = SC.grade*1.1 FROM SC, S

WHERE SC.sno = S.sno AND S.sex = ‘女‘

4)如果学号为J0404的学生成绩少于90分,则加上10分。

Sql语句:

UPDATE SC

SET SC.grade = SC.grade+10

WHERE SC.sno = ‘J0404‘ AND SC.grade < 90

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

UPDATE SC

SET SC.grade = SC.grade+10

WHERE SC.grade = (SELECT TOP 1 SC.grade FROM SC ORDER BY SC.grade)

6)将成绩最高前3名的学生成绩减去20分。

Sql语句:

UPDATE SC

SET SC.grade = SC.grade-20

WHERE SC.grade IN (SELECT TOP 3 SC.grade FROM SC ORDER BY SC.grade DESC)

7)将成绩最低前10%的学生成绩减去5分。

Sql语句:

UPDATE SC

SET SC.grade = SC.grade-5

WHERE SC.grade IN (SELECT TOP 10 PERCENT SC.grade FROM SC ORDER BY SC.grade)

8)把王敏同学的学习选课和成绩全部删去。

Sql语句:

DELETE FROM SC

WHERE SC.sno = (SELECT S.sno FROM S WHERE S.sname = ‘王敏‘)

9)从学生表中删除成绩出现过 0 分的所有学生信息。

Sql语句:

DELETE FROM S

WHERE S.sno = (SELECT SC.sno FROM SC WHERE SC.grade = 0)

3、在查询分析器中用CREATE语句建立视图。

1)建立计算机系学生的视图IS_student。

Sql语句:

CREATE VIEW IS_student

AS

SELECT * FROM S

WHERE S.sdeptartment = ‘计算机系‘

WITH CHECK OPTION

2)建立计算机系选修了C02课程的学生的视图IS_C02。

Sql语句:

CREATE VIEW IS_C02

AS

SELECT * FROM S

WHERE S.sdeptartment = ‘计算机系‘ AND S.sno =

(SELECT SC.sno FROM SC WHERE SC.cno = ‘C02‘)

WITH CHECK OPTION

3)建立计算机系选修了C02课程且成绩在90分以上的学生的视图IS_C0290。

Sql语句:

CREATE VIEW IS_C0290

AS

SELECT * FROM S

WHERE S.sdeptartment = ‘计算机系‘ AND S.sno =

(SELECT SC.sno FROM SC WHERE SC.cno = ‘C02‘ AND SC.grade >= 90)

WITH CHECK OPTION

4、在查询分析器中用DROP语句删除视图IS_student。

Sql语句:

DROP VIEW IS_student

四、实验总结

新手自学 有错勿喷

时间: 2024-10-17 12:34:59

数据更新、视图的创建与修改的相关文章

视图的创建

-- 创建数据库 create table emp( sid int(8) primary key, sname varchar(10), sex varchar(2), chu varchar(50), classno varchar(50) ); -- 表中的数据 insert into emp (sname,sex,chu,classno) values ('张石瑞','男','1996-01-02','2600'), ('李佛','女','1998-05-15','3000'), ('王

oracle 物化视图及创建索引

物化视图是一种特殊的物理表,“物化”(Materialized)视图是相对普通视图而言的.普通视图是虚拟表,应用的局限性大,任何对视图的查询,Oracle都实际上转换为视图SQL语句的查询.这样对整体查询性能的提高,并没有实质上的好处. 1.物化视图的类型:ON DEMAND.ON COMMIT 二者的区别在于刷新方法的不同,ON DEMAND顾名思义,仅在该物化视图“需要”被刷新了,才进行刷新(REFRESH),即更新物化视图,以保证和基表数据的一致性:而ON COMMIT是说,一旦基表有了C

SQL Server索引进阶:第十二级,创建,修改,删除

在第十级中我们看到了索引的内部结构,在第十一级中我们看到了平衡树结构潜在的负面影响:索引碎片.有了索引内部结构的知识,我们可以检查在执行数据定义语句和数据操作语句的时候,都发生了什么.在本级中我们介绍数据定义语言的三个动词:create,alter和drop.在下一级中,我们介绍数据操作语言的三个动词:insert,update,delete. 创建,修改,删除索引都是索引维护的范围.create,alter,drop作为维护索引的动词,只是因为SQL Server团队认为队友对象的维护应该使用

如何使用StarUML for Mac创建和修改元素

StarUML for Mac是一款UML软件建模器,支持快速编辑中的许多缩写,一次创建元素和关系,如子类,支持接口等.如何使用StarUML for Mac创建和修改元素?下面我们来介绍一下. 如何使用StarUML for Mac创建和修改元素 在本章中,我们将学习如何创建和修改元素.最重要的是,您不应直接创建或修改元素,因为所有更改都应通过undo和redo支持的操作完成.var class1 = new UMLClass()class1.name = "New Name"创建元

MySQL:创建、修改和删除表

其实对很多人来说对于SQL语句已经忘了很多,或者说是不懂很多,因为有数据库图形操作软件,方便了大家,但是我们不能忘记最根本的东西,特别是一些细节上的东西,可能你用惯了Hibernate,不用写SQL语句,但是不是任何项目都要用到大框架的,如果不用,那你是不是就不会操作数据库了呢,所以我们最好还是熟悉一点好,对我们以后找工作和工作都有帮助. 在说创建.修改和删除表前,我们还是要进行一个操作的简单说明: 1.登陆数据库系统 在命令行中登陆MySQL数据库管理系统,输入一下内容: mysql -h l

视图的创建(根据已有的表)

Create View V_CouponTypeasSELECT CouponTypeId, CouponTypeNameFROM Gas_CN_Trade_B2C.dbo.CouponTypeWHERE (IsDeleted = 0) 视图的创建(根据已有的表),布布扣,bubuko.com

C# 轻松读取、改变文件的创建、修改、访问时间 z

// 读取文件的创建.修改.访问时间FileInfo fi = new FileInfo("C://test.txt");Console.WriteLine(fi.CreationTime.ToString());Console.WriteLine(fi.LastWriteTime.ToString());Console.WriteLine(fi.LastAccessTime.ToString()); // 改变(设置)文件的创建.修改.访问时间File.SetCreationTime

c# 注册表操作,创建,删除,修改,判断节点是否存在

用.NET下托管语言C#操作注册表,主要内容包括:注册表项的创建,打开与删除.键值的创建(设置值.修改),读取和 删除.判断注册表项是否存在.判断键值是否存在. 准备工作: 1:要操作注册表,我们必须要引入必要的命名空间: C#代码    using Microsoft.Win32; 在这个命名空间里面包含了许多注册表相关的类,足够我们使用了~~ 2:命名空间里面提供了一个类:RegistryKey 利用它我们可以定位到注册表最开头的分支: ClassesRoot,CurrentUser,Use

创建和修改数据库的架构名

--创建架构名: CREATE SCHEMA [架构名] --修改数据库表架构名 ALTER SCHEMA [新架构名] TRANSFER [旧的架构名].[对象名] 创建和修改数据库的架构名,码迷,mamicode.com