数据库实验四-视图简单使用

本文数据集见实验一

视图

视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表,基表的数据变化也会影响到视图。

视图的规则和限制:

  • 与表一样,必须唯一命名(不能出现同名视图或表名)
  • 创建视图数目无限制,但要考虑复杂查询创建为视图之后的性能影响
  • 视图不能添加索引,也不能有关联的触发器或者默认值
  • 视图可以提高安全性,必须具有足够的访问权限
  • order by 可以用在视图中,但是如果从该视图检索数据 select 中也含有 order by ,那么该视图中的order by 将被覆盖
  • 视图可以和表一起使用

实验目的

  • 掌握使用SQL命令进行视图的创建、修改和删除。
  • 掌握使用SQL命令对视图访问数据。

实验内容

1.创建一个简单的视图,查询课程号101的不及格的学生信息;

创建视图create view 视图名 as select语句;

create view 学生信息 as select * from XSQK where 学号 in(select 学号 from XS_KC where 课程号='101' and 成绩<60);

在这里插入图片描述

2.修改简单视图,查询课程号107成绩介于70-90的学生信息;

alter view 学生信息 as select * from XSQK where 学号 in(select 学号 from XS_KC where 课程号='107' and 成绩 between 70 and 90);

在这里插入图片描述
3.使用视图访问数据;

select * from 学生信息;

在这里插入图片描述

使用视图访问数据和基本表相同。

4.删除所创建的视图;

使用drop view 视图名;就可以删除视图

drop view 学生信息;

在这里插入图片描述
5.创建一个简单视图,查询“计算机系”学生的信息;

create view 计算机系学生信息 as select * from XSQK where 所在系='计算机';

在这里插入图片描述
6.创建一个简单视图,统计每门课程的选课人数和最高分;

create view 选课人数和最高分 as select 课程名,count(XS_KC.课程号) as 选课人数,max(成绩) as 最高分 from XS_KC,KC where XS_KC.课程号=KC.课程号 group by课程名;

在这里插入图片描述
7.创建一个复杂视图,查询与“俞奇军”住在同一寝室的学生信息,即其联系电话相同;

reate view 俞奇军宿舍学生信息 as select * from XSQK where 联系电话=(select 联系电话 from XSQK where 姓名='俞奇军');

创建视图:
在这里插入图片描述
查询视图:
在这里插入图片描述
8.创建一个复杂视图,查询选修了课程的同学的姓名,课程名及成绩;

create view 已选课学生信息 as select XSQK.姓名,KC.课程名,XS_KC.成绩 from XSQK,XS_KC,KC where(XS_KC.学号=XSQK.学号 and XS_KC.课程号=KC.课程号);

在这里插入图片描述

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
SQL Server 2000系统的安装及配置 1)安装SQL Server 2000系统。   选择 "下一步",然后选择 "本地计算机" 进行安装。   在 "安装选择" 窗口,选择 "创建新的SQL Server实例..."。 在 "用户信息" 窗口,输入用户信息,并接受软件许可证协议。   在 "安装定义"窗口,选择 "服务器和客户端工具" 选项进行安装。。   在 "实例名" 窗口,选择 "默认" 的实例名称。这时本SQL Server的名称将和Windows 2000服务器的名称相同。   在 "安装类型" 窗口,选择 "典型" 安装选项,并指定 "目的文件夹"。   在 "服务账号" 窗口,请选择 "对每个服务使用统一账户..." 的选项。在 "服务设置" 处,选择 "使用本地系统账户"。   在 "身份验证模式" 窗口,请选择 "混合模式..." 选项,并设置管理员"sa"账号的密码。如果您的目的只是为了学习的话,可以将该密码设置为空,以方便登录。 2)分别使用SQL Server服务管理器和控制面板启动MS SQL Server服务。 开始→程序→SQL Server2000→企业管理器 3)练习企业管理器使用创建数据库:在处单击右键,选中“新建数据库” 删除数据库:在“数据库”处单击右键,选中“删除” 新建表:双击数据库,然后双击“表”进入,在单击右键“新建表” 4)在企业管理器下创建一个服务器组group1,在这个组下注册一个服务器。查看有哪些数据库数据库中有哪些数据对象。 在企业管理器下单击右键,选择“新建SQL Sever组”,命名为“group1”,在处单击右键,选“新建SQL Sever注册”然后“下一步” 5)练习查询分析器的使用,在查询分析器中输入如下SQL语句,查看结果。 USE PUBS GO SELECT * FROM Authors GO 三、SQL调试及结果 数据库创建和管理 1.在SQL Server企业管理器中创建一个数据库,具体要求如下: (1)数据库名称为Mydata。 (2)主要数据文件:逻辑文件名为Mydatabase,物理文件名为Mydatabase.mdf,初始容量为1MB,最大容量为10MB,递增量为1MB。 (3)次要数据文件:逻辑文件名为Mydatabak,物理文件名为Mydatabak.ndf,初始容量为1MB,最大容量为10MB,递增量为1MB。 (4)事务日志文件:逻辑文件名为Mydatalog,物理文件名为Mydatalog.ldf,初始容量为1MB,大容量为5MB,递增量为512KB。 2.在查询分析器中输入并执行一个CREATE DATABASE语句,具体要求如下: (1)数据库名称为SA; (2)主要数据文件:逻辑文件名为SAdatabase,物理文件名为SAdatabase.mdf,初始容量为1MB,最大容量为10MB,递增量为1MB; (3)次要数据文件:逻辑文件名为SAdatabakup,物理文件名为SAdatabakup. ndf,初始容量为1 MB,最大容量为10MB,递增量为1MB; (4)事务日志文件:逻辑文件名为SAdatalog,物理文件名为SAdatalog.Ldf,初始容量为512KB,最大容量为5MB,递增量为512KB。 命令: create database SA on primary (name=SAdatabase, filename='F:\Homework\MS\SQL\SAdatabase.mdf', size=1, maxsize=10, filegrowth=1 ) ,filegroup ff (name=SAdatabakup, filename='F:\Homework\MS\SQL\SAdatabakup.mdf', size=1, maxsize=10, filegrowth=1) log on (name=SAdatalog, filename='F:\Homework\MS\SQL\SAdatalog.mdf', size=1, maxsize=5, filegrowth=512kb) 3.按照下列要求在企业管理器中修改第2题中创建的SA数据库: alter database SA modify file ( name= SAdatabase, size=5, maxsize=20, filegrowth=2 ) alter database SA modify file ( name= SAdatabakup, size=5, maxsize=20, filegrowth=2 ) modify file ( name= SAdatalog, size=2, maxsize=10, filegrowth=1 ) (1)主要数据文件的容量为5MB,最大容量为20MB,递增量为2MB。 (2)次要数据文件的容量为5MB,最大容量为20MB,递增量为2MB。 (3)事务日志文件:初始容量为2MB,最大容量为 10MB,递增量为1MB。 截图文件:4.数据库更名,要求:把SA数据库改名为mySA。 alter database SA modify name=mySA 为了使数据库名称简单,修改回原来的SA alter database mySA modify name= SA 5.收缩数据库,要求:分别使用DBCC SHRINKDATABASE和DBCC SHRINKFILE进行收缩。 DBCC SHRINKDATABASE (SA ,target_percent        [,{ NOTRUNCATE | TRUNCATEONLY } ] ) 6.删除数据库(以下是在windows xp环境下的截图) (1)在企业管理器中删除Mydata数据库。 在Enterprise manager可以在“Mydata”上单击右键,然后单击删除 截图: (2)在查询分析器中用DROP DATABASE语句删除经过第3题修改以后的SA数据库。 drop database SA (3),如果当前没有选中理想中的数据库文件可以运行下面命令: USE SA GO

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值