创建教材的三个数据表Student、Course及SC。

create database S_T
Use S_T
CREATE TABLE Student
(Sno CHAR(9),
Sname CHAR(20),
Ssex CHAR(20),
Sage SMALLINT,
Sdept CHAR(20)
);
CREATE TABLE SC
(Sno CHAR(9),
Cno CHAR(4),
Grade SMALLINT,
);
CREATE TABLE Course
(Cno CHAR(4),
Cname CHAR(40),
Cpno CHAR(4),
Ccredit SMALLINT,
); 2、向三个表中插入教材中的数据。
INSERT INTO Student values('200215121','李勇','男',20,'CS');
INSERT INTO Student values('200215122','刘晨','女',19,'CS');
INSERT INTO Student values('200215123','王敏','女',18,'MA');
INSERT INTO Student values('200215124','张立','男',19,'IS');
INSERT INTO Course values('1','数据库','5',4);
INSERT INTO Course(Cno,Cname,Ccredit) values('2','数学',2);
INSERT INTO Course values('3','信息系统','1',4);
INSERT INTO Course values('4','操作系统','6',3);
INSERT INTO Course values('5','数据结构','7',4);
INSERT INTO Course (Cno,Cname,Ccredit) values('6','数据处理',2);
INSERT INTO Course values('7','PASCAL语言','6',4);
INSERT INTO SC VALUES ('200215121', '1', 92);
INSERT INTO SC VALUES ('200215121', '2', 85);
INSERT INTO SC VALUES ('200215121', '3', 88);
INSERT INTO SC VALUES ('200215122', '2', 90);
INSERT INTO SC VALUES ('200215122', '3', 80);
3、创建一个名为View_Male_Student的视图,从表Student中查询出性别为男的所有学生的资料。
create view View_Male_Student AS
select * from Student where Ssex='男'
4、查看View_Male_Student视图的内容。
select * from View_Male_Student 5、从视图View_Male_Student中查询名为“李勇”的同学的资料。
select * from View_Male_Student where Sname='李勇' 6、向视图View_Male_Student中插入一条记录(‘200215126’,’赵林’,’男’,18,’CS’);
insert into View_Male_Student
values('200215126','赵林','男',18,'CS')
7、重新查看View_Male_Student视图的内容。
select * from View_Male_Student 发生变化 8、查看Student中的内容,看表的内容是否发生变化。
select * from Student 9、向视图View_Male_Student中插入一条记录(‘200215127’,’李红’,’女’,18,’CS’);
是否成功?Student表中的数据数据是否发生变化?
insert into View_Male_Student values('200215127','李红','女',18,'CS')
select * from Student 成功,表中数据发生变化 10、创建一个名为View_Male_Student1的视图,从表Student中查询出性别为男的所有学生的资料,视图加上WITH CHECK OPTION选项。
create view View_Male_Student1 AS
select * from Student where Ssex='男'
WITH CHECK OPTION
11、向视图View_Male_Student1中插入一条记录(‘200215128’,’关飞’,’男’,18,’CS’);
insert into View_Male_Student1
values('200215128','关飞','男',18,'CS')
12、向视图View_Male_Student1中插入一条记录(‘200215129’,’孙婷’,’女’,18,’CS’);
是否成功?Student表中的数据数据是否发生变化?
insert into View_Male_Student1
values('200215129','孙婷','女',18,'CS') select * from Student 没有发生变化,显示插入错误,因为必须是’男’才可以 13、创建一个名为View_Course3的视图,从Course表中查询学分大于3的所有课程的课程号、课程名、学分。
create view View_Course3 AS
select Cno,Cname,Ccredit from Course
where Ccredit>3
14、查看View_Course3视图的内容。
select * from View_Course3 15、修改View_Course3视图,将“数学”改为“基础数学”。
update View_Course3 set Cname='基础数学'
where Cname='数学' 更新行,因为数学的学分是,不在视图View_Course3中 16、查看View_Course3和Course数据是否发生变化。
select * from View_Course3
select * from Course
没有发生变化,因为数学的学分是,不在视图View_Course3中 17、删除视图View_Course3中的PASCAL语言课程。
delete from View_Course3 where Cname='PASCAL语言'
18、查看View_Course3和Course中的数据是否发生变化。
select * from View_Course3
select * from Course 两个都发生变化,PASCAL语言被删除 19、创建一个名为View_Student1的视图,包含计算机系所有女生的学号、课程号及相应的成绩。
create view View_Student1 AS
select SC.Sno,Cno,Grade from SC,Student
where SC.Sno=Student.Sno and Sdept='CS'and Ssex ='女'
20、查看View_Student1的内容。
select * from View_Student1 21、创建一个名为View_Student2的视图,包含每位选课学生的学号、姓名、总成绩。
create view View_Student2
as select Student.Sno,Sname,SUM(Grade) AS '总成绩'
FROM Student,SC where Student.Sno=SC.Sno
GROUP By Student.Sno,Student.Sname
22、查看View_Student2中的内容。
select * from View_Student2

视图的创建与使用 Sql Server View的更多相关文章

  1. 07Microsoft SQL Server View

    Microsoft SQL Server View 1.视图 视图是一个虚拟的表,是表中的数据经过某种筛选后的显示方式,视图由预定义的查询select语句组成. 2.查看视图信息 --查询系统所有视图 ...

  2. 批处理创建数据库(Sql Server)

    ylbtech-Miscellaneos:批处理创建数据库(Sql Server) 1.A,资源(Resource) - 创建数据返回顶部 1.A.1,InstallDatabases.cmd - 编 ...

  3. 创建和使用SQL Server SSAS本地多维数据集

    Microsoft SQL Server SSAS的本地多维数据集(即Local Cube,也叫脱机多维数据集)和本地挖掘模型(Local Mining Models)允许在客户端机器上脱机执行离线分 ...

  4. 如何创建和还原SQL Server 2005数据库?

    在还原SQL Server 2005数据库文件之前,建议先把要还原的数据库文件复制粘贴到某个盘的根目录下,这样便于一会儿找到相关的文件,比如C盘. 先打开SQL Server 2005的Microso ...

  5. 如何创建和还原SQL Server 2000数据库?

    说明:这篇文章是几年前我发布在网易博客当中的原创文章,但由于网易博客现在要停止运营了,所以我就把这篇文章搬了过来,虽然现如今SQL Server 2000软件早已经过时了,但仍然有一部分人在使用它,尤 ...

  6. sql server ------创建本地数据库 SQL Server 排序规则

    sql server完整复制数据库 sql server导入导出方法 SQL Server 排序规则

  7. 自动创建数据库(DELPHI+SQL SERVER)

    procedure TForm1.Btn_OKClick(Sender: TObject); var sqlconn:string; begin Sqlconn:='Provider=SQLOLEDB ...

  8. 创建和管理SQL Server数据库

    1.创建数据库 右击“数据库”,在弹出的快捷菜单中选择“新建数据库”选项 2.分离和附加数据库 分离:右击数据库"MySchool",在弹出的快捷菜单中选择“任务”—“分离”选项 ...

  9. Sql Server的艺术(一) 视图的增删查改

    视图是从一个或者多个表中查询数据的另一种方式.利用视图可以集中.简化定制数据库,同时还能保障安全. 视图其结构和数据是建立在对应的查询基础上的.和表一样,视图也是包括几个被定义的数据列和多个数据行,但 ...

随机推荐

  1. Oracle 重置序列

    Oracle将自增sequence重置为初始值1时,若是删除再重建,那么依赖它的函数和存储过程将失效,需要重新编译. 这里利用相反的过程,利用负值步长参数,将递增值改为(sequence.NEXTVA ...

  2. 基于Android平台的简易人脸检测库

    代码地址如下:http://www.demodashi.com/demo/12135.html ViseFace 简易人脸检测库,不依赖三方库,可快速接入人脸检测功能. 项目依赖:compile 'c ...

  3. jetty学习小结

    1.什么是jetty? 开源HTTP服务器和Servlet引擎,是web应用的容器,同tomcat类似.由于其轻量灵活的特性,很多知名产品也应用了它,如maven.eclipse.hadoop.spa ...

  4. Redis 数据恢复方法,redis-port 工具将自建 redis 的 rdb文件同步到云数据库

    1. Redis 恢复的机制 如果只配置 AOF ,重启时加载 AOF 文件恢复数据: 如果同时配置了 RDB 和 AOF ,启动是只加载 AOF 文件恢复数据: 如果只配置 RDB,启动是将加载 d ...

  5. mongodb在Windows安装配置及遇到的问题、java连接测试

    一.安装 1.访问mongodb的官网http://www.mongodb.org/downloads下载64bit的包,我下载的是mongodb-win32-x86_64-2008plus-ssl- ...

  6. oc 把view添加到rootcontrollerview控制的view

    在当前活跃的window 添加一个view [[[[[UIApplication sharedApplication] keyWindow] rootViewController] view] add ...

  7. ASP.NET CORE RAZOR :初始化数据库

    官方说法是:设定数据库种子https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/razor-pages/sql 应用背景:初次部署系统时,设定一 ...

  8. storm RollingTopWords 实时top-N计算任务窗口设计

    转发请注明原创地址 http://www.cnblogs.com/dongxiao-yang/p/6381037.html 流式计算中我们经常会遇到需要将数据根据时间窗口进行批量统计的场景,窗口性质一 ...

  9. 红米手机连接logcat,调试信息刷屏解决办法

    我买了红米,平时拿它来当作安卓测试机的 可是把它接入eclipse里面,发现它会往logcat打印大量的日志,我自己想调试一个程序的时候,自己的程序的日志一会儿就被冲刷没了 新建一个logcat me ...

  10. android 学习mvc 和 mvp 和 mvvm参考项目

    githup地址:https://github.com/ivacf/archi 阿尔奇 此存储库展示并比较可用于构建Android应用程序的不同架构模式.完全相同的示例应用程序使用以下方法构建三次: ...