实验4数据库的查询和视图.docx

合集下载

数据库实验4_数据库查询与视图

数据库实验4_数据库查询与视图

在学生选课数据库中完成规定查询,并创建视图。

1.查询线性代数不及格的同学的学号和姓名;SQL语句为:SELECT名单$.学号,姓名FROM名单$,学生选课信息和成绩$,课程$WHERE名单$.学号=学生选课信息和成绩$.学号AND课程$.课号=学生选课信息和成绩$.课号AND课程$.课程名='线性代数'AND学生选课信息和成绩$.成绩<60;执行后结果为:2.查询没有选课记录的同学的所有基本信息;SQL语句为:SELECT*FROM名单$WHERE NOTEXISTS(SELECT*FROM学生选课信息和成绩$WHERE学号=名单$.学号);执行后结果为:3.查询具有简介先修课的课程信息及对应的先修课名;SQL语句为:SELECTFIRST.课号,SECOND.课程名FROM课程$FIRST,课程$SECONDWHEREFIRST.先修课号=SECOND.课号;执行后结果如下:4.统计高等数学(1)的平均成绩;SQL语句为:SELECT AVG(成绩)FROM学生选课信息和成绩$,课程$WHERE学生选课信息和成绩$.课号=课程$.课号AND课程$.课程名='高等数学(1)'; 执行后结果如下:5.统计各门课的选课人数;SQL语句为:SELECT课号,COUNT(学号)FROM学生选课信息和成绩$GROUPBY课号;执行后结果为:6.查询选修5门课以上的学生的学号;SQL语句为:SELECT学号FROM学生选课信息和成绩$GROUPBY学号HAVING COUNT(*)>5;执行后结果为:7.用你的学号查询和你一个班的同学的学号和姓名;SQL语句为:SELECT学号,姓名FROM名单$WHERE班级IN(SELECT班级FROM名单$WHERE学号='201000800145');执行后结果如下:8.查询高等数学(1)成绩比你高出10分以上的同学的姓名和对应成绩;SQL语句为:SELECT姓名,成绩FROM名单$,学生选课信息和成绩$WHERE名单$.学号=学生选课信息和成绩$.学号AND学生选课信息和成绩$.课号='82006010'AND成绩>(SELECT成绩+10FROM学生选课信息和成绩$,课程$WHERE学生选课信息和成绩$.课号=课程$.课号AND课程$.课程名='高等数学(1)' AND学生选课信息和成绩$.学号='201000800145')执行后结果为:9.找到每门课获得最高成绩的同学的学号、姓名、课名和成绩;选做。

第4章 数据库的查询和视图

第4章  数据库的查询和视图

图4.2 使用全文索引
第3步 下面使用SQL Server全文索引向导创建全文索引。在“对象资源管 理器”中展开“数据库”→“PXSCJ”→选择表“dbo.XSB”,右击鼠标,在 弹出的快捷菜单上选择“全文索引”菜单项,在打开的子菜单中选择“定义全 文索引”菜单项。 第4步 在打开的“全文索引向导”窗口中单击“下一步”按钮,为表选择 “唯一索引”后单击“下一步”按钮。选择作为全文索引的“属性列”及“语 言种类”(如图4.3所示),单击“下一步”按钮,这里跟踪模式选择默认的 “自动”。
说 明
求组中值的平均值 返回对表中的行或表达式列表计算的二进制校验值,可用于检测表中 行的更改 返回在表的行上或在表达式列表上计算的校验值,用于生成哈希索引 返回组中值的校验值 求组中项数,返回int类型整数 求组中项数,返回bigint类型整数 产生一个附加的列 求最大值 求最小值 返回表达式中所有值的和 返回给定表达式中所有值的统计标准偏差 返回给定表达式中所有值的填充统计标准偏差 返回给定表达式中所有值的统计方差 返回给定表达式中所有值的填充的统计方差
【例4.23】 查询XSB表中专业为“计算机”或“通信工程”或“无线电” 的学生的情况。
SELECT * FROM XSB WHERE 专业 IN ('计算机', '通信工程', '无线电') 该语句与下列语句等价: SELECT * FROM XSB WHERE 专业= '计算机' or 专业= '通信工程' or 专业='无线电‘
SELECT 姓名,学号,总学分 FROM ( SELECT 姓名,学号,性别,总学分 FROM XSB WHERE 总学分>50 ) AS STUDENT WHERE 性别=1;

数据库的视图操作实验报告

数据库的视图操作实验报告

实验(四)数据库的视图操作实验一、实验目的和要求(1)掌握SQL Server中的视图创建向导和图表创建向导的使用方法;(2)加深对视图和SQL Server图表作用的理解。

(3)掌握数据库安全性的操作方法。

二、实验内容和原理1. 基本操作实验(1)在SQL Server企业管理器中调出Create View Wizard(创建图表向导),按下列Transact-SQL描述的视图定义,创建借阅_计算机图书视图。

CREATE VIEW 借阅_计算机图书AS SELECT 图书.*,借阅.*FROM 图书,借阅WHERE图书.编号=借阅.书号AND图书.类别=‘计算机’(2)在SQL server企业管理器中调出Create View Wizard(创建图表向导),完成在图书-读者数据库中建立一个图书_借阅图表操作。

要求该图表包括图书和借阅两个表,并包括图书与借阅之间的“图书.书号=借阅.书号”外码与被参照表之间的关联。

(3)查看上述实验结果。

如果结果有误,予以纠正。

2. 提高操作实验在学生-课程数据库中用Transact-SQL语句描述下列视图定义。

(1)从学生表中建立查询所有男(女)生信息的视图STU_SEX。

视图的列名为SNO、SNAME、SSEX和SAGE。

(2)从课程表中建立查询所有课程先修课信息的视图课程_PRE。

视图的列名为课程号、课程名称和先修课名称。

(3)从选修表中建立查询成绩大于等于80信息的视图STU_CJ1。

视图的列名为学号、课程号和成绩。

(4)从学生、选修和课程三个表建立查询学生选修情况的视图STU_CJ2。

视图的列名为姓名、课程名称和成绩。

(5)从学生、选修和课程三个表建立查询学生选修情况并且成绩小于80的视图STU_CJ3。

视图的列名为姓名、课程名称和成绩。

(6)利用Transact-SQL命令修改视图STU_SEX。

把视图的列名改为学号、姓名、性别和年龄,把加上“WITH CHECK OPTION”选项。

实验4:数据库的高级查询操作

实验4:数据库的高级查询操作

实验4:数据库的高级查询操作实验四:数据库的各类数据查询操作一、实验目的掌握SQL程序设计基本规范,熟练运用SQL语言实现数据的各种查询和设计,包括连接查询、嵌套查询、集合查询等。

二、实验内容和要求针对KingbaseES数据库设计单个表针对自身的连接查询,设计多个表的连接查询;设计各种嵌套查询和集合查询。

了解和掌握SQL查询语句各个子句的特点和作用,按照SQL程序设计规范写出具体的SQL查询语句,并调试通过。

三、实验步骤连接查询1. 查询每个学生及其选修课程的情况:select student.*, sc.* from student, sc where student.sno=sc.sno比较: 笛卡尔集: select student.*, sc.* from student, sc自然连接: select student.sno, sname, ssex, sdept, cno, grade from student, sc where student.sno=sc.sno2. 查询每一门课程的间接先行课(只求两层即先行课的先行课):select /doc/3d4429586.html,o, Second.pcno 间接先行课from course First, course Second where First.pcno=/doc/3d4429586.html,o比较:select /doc/3d4429586.html,o, Second.pcno 间接先行课from course First, course Second where First.pcno=/doc/3d4429586.html,o and Second.pcno is not null3. 列出所有学生的基本情况和选课情况, 若没有选课,则只列出基本情况信息:SQL Server 中: select s.sno, sname, ssex,sdept, cno, grade from student s, sc sc where s.sno*=sc.sno4. 查询每个学生的学号, 姓名, 选修的课程名和成绩:select S.sno, sname, cname, grade from student S, course C, sc SC where S.sno=SC.sno and /doc/3d4429586.html,o=/doc/ 3d4429586.html,o5. 查询平均成绩在80分以上的学生姓名Select sname from student,sc where student.sno=sc.sno GROUP BY sc.snoHAVING AVG(sc.grade)>80;高级查询使用带IN谓词的子查询1.查询与’刘晨’在同一个系学习的学生的信息:select * from student where sdept in(select sdept from student where sname='刘晨')比较: select * from student where sdept =(select sdept from student where sname='刘晨') 的异同比较: select * from student where sdept =(select sdept from student where sname='刘晨') and sname<>'刘晨' 比较: select S1.* from student S1, student S2 where S1.sdept=S2.sdept and S2.sname='刘晨'2.查询选修了课程名为’信息系统’的学生的学号和姓名:SQL Server中: select sno, sname from student where sno in (select sno from sc where cno in(select cno from course where cname='信息系统'))3.查询选修了课程’1’和课程’2’的学生的学号:select sno from student where sno in (select sno from sc where cno='1')and sno in (select sno from sc where cno='2') 比较: 查询选修了课程’1’或课程’2’的学生的sno:select sno from sc where cno='1' or cno='2'比较连接查询:select A.sno from sc A, sc B where A.sno=B.sno and /doc/3d4429586.html,o='1' and/doc/3d4429586.html,o='2'使用带比较运算的子查询1.查询比’刘晨’年龄小的所有学生的信息:select * from student where sage<(select sage from student where sname='刘晨')使用带Any, All谓词的子查询2.查询其他系中比信息系(IS)某一学生年龄小的学生姓名和年龄;select sname, sage from student where sage <any< p=""> (select sage from student where sdept='IS')and sdept<>'IS'3.查询其他系中比信息系(IS)学生年龄都小的学生姓名和年龄:select sname, sage from student where sage <all< p="">(select sage from student where sdept='IS')and sdept<>'IS'4.查询与计算机系(CS)系所有学生的年龄均不同的学生学号, 姓名和年龄:select sno,sname,sage from student where sage<>all(select sage from student where sdept='CS')使用带Exists谓词的子查询和相关子查询5.查询与其他所有学生年龄均不同的学生学号, 姓名和年龄:select sno,sname,sage from student A where not exists(select * from student B where A.sage=B.sage andA.sno<>B.sno)6.查询所有选修了1号课程的学生姓名:select sname from student where exists(select * from sc where sno=student.sno and cno='1')7.查询没有选修了1号课程的学生姓名:select sname from student where not exists(select * from sc where sno=student.sno and cno='1')8.查询选修了全部课程的学生姓名:select sname from student where not exists(select * from course where not exists( select * from sc where sno=student.sno and cno=/doc/3d4429586.html,o))12. 查询至少选修了学生95002选修的全部课程的学生的学号:select distinct sno from sc A where not exists(select * from sc B where sno='95002'and not exists(select * from sc C where sno=A.sno and cno=/doc/3d4429586.html,o))13. 求没有人选修的课程号cno和cnamecname:select cno,cname from course C where not exists(select * from sc where /doc/3d4429586.html,o=/doc/ 3d4429586.html,o )14. 查询满足条件的(sno,cno)对, 其中该学号的学生没有选修该课程号cno 的课程select sno,cno from student,course where not exists(select * from sc where cno=/doc/3d4429586.html,o and sno=student.sno)15. 查询每个学生的课程成绩最高的成绩信息(sno,cno,grade):select * from sc A where grade=(select max(grade) from sc where sno=A.sno )集合查询1. 查询数学系和信息系的学生的信息;select * from student where sdept='MA' union select * from student where sdept='IS'2. 查询选修了1号课程或2号课程的学生的学号:select sno from sc where cno='1'Unionselect sno from sc where cno='2'思考:1. 连接查询速度是影响关系数据库性能的关键因素。

第4章 数据库的查询和视图

第4章 数据库的查询和视图
ΠT1,T2,T5(T) 该运算得到如表4.3所示的新表。
T1
T2
T5
T1
T2
T5
1
A1
M
3
A2
O
2
B1
N
5
D
P
第三页,共73页。
3.连接(JOIN) 连接是把两个表中的行按照给定的条件进行拼接而形成新表,记为 。其中,R、S是被 操作的表,F是条件。 例如,若表A和B分别如表4.4和表4.5所示,则 如表4.6所示,其中F为T1=T3。
执行结果如下所示:
【例4.21】 查询XSB表中名字包含下画线的学生学号和姓名。
SELECT 学号,姓名 FROM XSB
WHERE 学号 LIKE '%#_%' ESCAPE '#'
第二十一页,共73页。
3.范围比较 用于范围比较的关键字有两个:BETWEEN和IN。当要查询的条件是某个值的范围时,可 以使用BETWEEN关键字。BETWEEN关键字指出查询范围,格式为: <表达式> [ NOT ] BETWEEN <表达式1> AND <表达式2> 使用IN关键字可以指定一个值表,值表中列出所有可能的值,当与值表中的任一个匹配时, 即返回TRUE,否则返回FALSE。使用IN关键字指定值表的格式为:
GO
SELECT 姓名,学号,总学分 FROM XSB WHERE 学号='081101';
执行结果如下所示:
第十八页,共73页。
【例4.17】 查询XSB表中总学分大于50的学生的情况。
SELECT 姓名,学号,出生时间,总学分
FROM XSB
WHERE 总学分>50;

数据库实验四.视图创建和查询

数据库实验四.视图创建和查询

南昌大学实验报告
一、实验项目名称
视图创建和查询
二、实验目的
熟悉视图定义和使用视图查询
三、实验基本原理和内容
请为三建公司项目建立一个供应情况的视图,包括供应商代码,零件代码,供应数量.针对该视图完成下列查询:
(1)找出三建工程项目使用的各种零件代码及其数量
(2)找出供应商S1的供应情况
四、主要仪器设备及耗材
PC机一台
五、实验步骤及实验数据及处理结果
1、创建视图:
CREATE VIEW三建供应情况
AS
SELECT SNO,PNO,QTY
FROM SPJ
WHERE JNO=(SELECT JNO
FROM J
WHERE JNAME='三建')
2、a:找出三建工程项目使用的各种零件代码及其数量
SELECT PNO,SUM(QTY)
FROM三建供应情况
GROUP BY PNO
b:找出供应商S1的供应情况
SELECT*FROM三建供应情况
WHERE SNO='S1'
六、参考资料
卫琳《SQL SERVER 2008数据库应用与开发教程》清华大学出版社2011.6。

数据库实验4_数据库查询与视图

数据库实验4_数据库查询与视图

数据库实验4_数据库查询与视图在学⽣选课数据库中完成规定查询,并创建视图。

1.查询线性代数不及格的同学的学号和姓名;SQL语句为:SELECT名单$.学号,姓名FROM名单$,学⽣选课信息和成绩$,课程$WHERE名单$.学号=学⽣选课信息和成绩$.学号AND课程$.课号=学⽣选课信息和成绩$.课号AND 课程$.课程名='线性代数'AND学⽣选课信息和成绩$.成绩<60;执⾏后结果为:2.查询没有选课记录的同学的所有基本信息;SQL语句为:SELECT*FROM名单$WHERE NOTEXISTS(SELECT*FROM学⽣选课信息和成绩$WHERE学号=名单$.学号);执⾏后结果为:3.查询具有简介先修课的课程信息及对应的先修课名;SQL语句为:SELECTFIRST.课号,SECOND.课程名FROM课程$FIRST,课程$SECONDWHEREFIRST.先修课号=SECOND.课号;执⾏后结果如下:4.统计⾼等数学(1)的平均成绩;SQL语句为:SELECT AVG(成绩)FROM学⽣选课信息和成绩$,课程$WHERE学⽣选课信息和成绩$.课号=课程$.课号AND课程$.课程名='⾼等数学(1)'; 执⾏后结果如下:5.统计各门课的选课⼈数;SQL语句为:SELECT课号,COUNT(学号)FROM学⽣选课信息和成绩$GROUPBY课号;执⾏后结果为:6.查询选修5门课以上的学⽣的学号;SQL语句为:SELECT学号FROM学⽣选课信息和成绩$GROUPBY学号HAVING COUNT(*)>5;执⾏后结果为:7.⽤你的学号查询和你⼀个班的同学的学号和姓名;SQL语句为:SELECT学号,姓名FROM名单$WHERE班级IN(SELECT班级FROM名单$WHERE学号='201000800145');执⾏后结果如下:8.查询⾼等数学(1)成绩⽐你⾼出10分以上的同学的姓名和对应成绩;SQL语句为:SELECT姓名,成绩FROM名单$,学⽣选课信息和成绩$WHERE名单$.学号=学⽣选课信息和成绩$.学号AND学⽣选课信息和成绩$.课号='82006010'AND成绩>(SELECT成绩+10FROM学⽣选课信息和成绩$,课程$WHERE学⽣选课信息和成绩$.课号=课程$.课号AND课程$.课程名='⾼等数学(1)' AND学⽣选课信息和成绩$.学号='201000800145')执⾏后结果为:9.找到每门课获得最⾼成绩的同学的学号、姓名、课名和成绩;选做。

实验四 数据查询

实验四 数据查询

实验四数据查询【实验目的】1.掌握使用SQL语句查询数据【实验内容】1.使用企业管理器进行数据查询2.在查询分析器内使用SQL语句进行数据查询【实验准备】1.复习与本次实验内容相关知识2.复习查询分析器的使用3.对本次实验中要求自己完成的部分做好准备(第二部分,请预先写出来) 【实验步骤】1.用SQL Server Management Studio(SSMS)进行数据查询o打开SQL Server Management Studioo展开服务器-->展开数据库-->展开自己的数据库-->单击表。

o在需要查询的表上单击右键,在弹出的快捷菜单中选择"打开表(O)",在已打开的表格形式下,右键,其下级菜单即为:▪关系图(D) --显示关系图▪条件(C) --以交互方式设计查询▪SQL (S) --打开查询窗口,以命令方式设计查询oo请从学生表(U_STUDENTS)上右击,使用"条件(C)"命令建立一个查询,请选中学号(SID)、姓名(NAME)两个字段,再单击上面的执行按钮(!按钮)执行查询,查看结果。

o 再在关系图窗格内右击鼠标在弹出菜单中选择添加表,添加班级表(U_CLASSES ),在班级表的CID 字段上按下鼠标左键,拖至学生表的CID 上建立关联,在班级表上选中班级(CLASS )、系(DEPARTMENT )字段,再在网格窗格上选择姓名(NAME )行上选择排序类型为"升序"。

执行该查询,查看结果。

结果如下图所示。

(注意查看SQL窗格内的SQL查询语句)o该操作实现了从班级表、学生表中查询出所有学生的姓名(NAME)、班级(CID)、班级名称(CLASS)、所在系(DEPARTMENT)的记录数据。

2.用SQL语句查询数据o启动数据库引擎查询器o在查询器中分别执行下列查询语句(有的语句请自己写出),体会或说明各语句的功能(请将下面的语句复制到查询分析器,逐条执行--要执行一条语句请选中该语句再按F5或单击执行铵钮,如下图所示)。

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

南京信息工程大学实验(实习)报告
实验(实习)名称实验4 数据库的查询和视图实验(实习)日期2016.10.24 得分指导教师方忠进系计算机专业网络工程年级2014 班次 2 姓名刘信言学号20142346074 一.实验目的
(1)掌握select语句的基本语法;
(2)掌握子查询的表示
(3)掌握连接查询的表示
(4)掌握select语句的group by子句的作用和使用方法
(5)掌握select语句的order by子句的作用和使用方法
二、实验准备
(1)了解SELECT语句的基本语法格式;
(2)了解SELECT语句的执行方法;
(3)了解子查询的表示方法;
(4)了解连接查询的表示;
(5)了解SELECT语句的GROUPBY子句的作用和使用方法;
(6)了解SELECT语句的ORDER BY子句的作用;
三、实验内容
T4.1 数据库的查询
(1)SELECT语句的基本使用。

①对于实验2给出的数据库表结构,查询每个雇员的所有数据。

新建一个查询,在查询分析器中输入如下语句并执行:
【思考与练习】
用SELECT语句查询Departments和Salary表中所有的数据信息。

②用SELECT语句查询Employees表中每个雇员的地址和电话。

新建一个查询,在查询分析器中输入如下语句并执行:
【思考与练习】
a. 用SELECT语句查询Deparments和Salary表的一列或若干列。

b. 查询Employees表中的部门号和性别,要求使用DISTINCT消除重复行。

③查询EmployeeID为000001的雇员的地址和电话。

【思考与练习】
a.查询月收入高于2000元的员工号码。

b.查询1970年以后出生的员工的姓名和住址。

c.查询所有财务部的员工的号码和姓名。

④查询Employees表中女雇员的地址和电话,使用AS子句将结果中各列的标题分别指定为地址、电话。

【思考与练习】查询Employees表中男员工的姓名和出生日期,要求将各列标题用中文标示。

⑤查询Employees表中员工的姓名和性别,要求SEX值为时显示为“男”,为0时显示为“女”。

【思考与练习】查询Employees员工的姓名、住址和收入水平,2000元以下显示低收入,2000-3000元显示为中等收入,3000元以上显示为高收入。

⑥计算每个雇员的实际收入
【思考与练习】使用SELECT语句进行简单的计算。

⑦获得员工总数。

【思考与练习】
a.计算salary表中员工月收入的平均数。

b.获得Employees表中最大员工号码。

c.计算Salary表中所有员工的总支出。

d.查询财务部雇员的最高和最低实际收入。

⑧找出所有姓王的雇员的部门号。

【思考与练习】
a.找出所有其地址中含有“中山”的雇员的号码及部门.。

b.查找员工号码倒数第二个数字为0的员工的姓名、地址和学历。

⑨找出所有收入在2000-3000元之间的员工号码。

【思考与练习】找出所有在部门“1”或“2”工作的雇员的号码。

注意:了解在SELECT语句中LIKE、BETWEEN…AND、IN、NOT以及CONTAIN谓词的作用。

⑩使用into子句,由表Salary创建“收入在1500元以上的员工”表,包括编号和收入
【思考与练习】使用Into子句,由表Employees创建“男员工”表,包括编号和姓名。

(2)子查询的使用。

①查找在财务部工作的雇员的情况
【思考与练习】用子查询的方法查找所有收入在2500元以下的雇员的情况
②查找财务部年龄不低于研发部雇员年龄的雇员的姓名。

【思考与练习】用子查询的方法查找研发部比所有财务部雇员收入都高的雇员的姓名。

②查找比所有财务部的雇员收入都高的雇员的姓名。

【思考与练习】用子查询的方法查找所有年龄比研发部雇员年龄都大的雇员的姓名。

(3)连接查询的使用。

①查询每个雇员的情况及其薪水的情况。

【思考与练习】查询每个雇员的情况及其工作部门的情况。

②使用内连接的方法查询名字为“王林”的员工所在的部门
【思考与练习】
a.使用内连接的方法查找出不在财务部工作的所有员工信息。

b . 使用外连接方法查找出所有员工的月收入。

③查找财务部收入在2000元以上的雇员姓名及其薪水详情。

新建一个查询,在查询分析器中输入如下语句并执行。

【思考与练习】查询研发部在1976以前出生的雇员姓名及其薪水详情。

(4)聚合函数的使用。

①求财务部雇员的平均收入
新建一个查询,在查询分析器中输入如下语句并执行。

【思考与练习】查询财务部雇员的最高和最低收入。

②求财务部的平均实际收入
新建一个查询,在查询分析其中输入如下语句并执行。

【思考与练习】查询财务部雇员的最高和最低实际收入。

③求财务部雇员的总人数
④【思考与练习】统计财务部收入在2500以上的雇员的人数。

(5)GROUP BY、ORDER BY子句的使用:①查找Employees表中男性和女性的人数
【思考与练习】
a.按部门列出在该部门工作的员工的人数。

b.按员工的学历分组,排列出本科、大专和硕士的人数。

②查找员工数超过2的部门名称和员工数量。

【思考与练习】按员工的工作年份分组,统计各个工作年份的人数,例如,工作一年的多少人,工作两年的多少人。

③将各雇员的情况按收入由低到高排列。

【思考与练习】
a.将员工的信息按出生的时间从小到大排列。

b.在order by 子句中使用子查询,查询员工姓名、性别和工龄信息,要求按实际收入从大到小排列。

T4.2视图的使用
1.目的和要求
(1)熟悉视图的概念和作用;
(2)掌握视图的创建方法;
(3)掌握如何查询和修改视图。

2.实验准备
(1)了解视图的概念;
(2)了解创建视图的方法;
(3)了解并掌握对视图的操作。

3.实验内容
(1)创建视图
①创建YGGL数据库上的视图DS_VIEW,视图包含Departments表的全部列。

②创建YGGL数据库上的视图Employees_view,视图包含“员工号码”、“姓名”和“实际收入”三列。

使用如下SQL语句:
(2)查询视图。

①从视图DS_VIEW中查询出部门号为3的部门名称。

②从视图Employees_view中查询出姓名为“王林”的员工的实际收入。

(3)更新视图
①向视图DS_VIEW中插入一行数据“6,广告部,广告业务”。

②修改视图DS_VIEW,将部门号为5的部门名称修改为“生产车间”。

③将视图Employees_view中员工号为“000001”的员工的姓名修改为“王浩”。

④删除视图DS_VIEW中部门号为“1”的一行数据。

(4)删除视图
删除视图DS_VIEW。

(5)在界面工具中操作视图。

①创建视图:启动SQL Server Management Studio,在对象资源管理器中展开“数据库→YGGL”,选择其中的“视图”项,右击鼠标,在弹出的快捷菜单上选择“新建视图”菜单项。

在随后出现的“添加表”窗口中,添加所需关联的基本表。

在视图窗口的关系图窗口显示了基表的全部列信息。

根据需要在窗口中选择创建视图所需的字段。

完成后单击“保存”按钮保存。

②查询视图:新建一个查询,输入T-SQL查询命令即可像查询表一样查询视图。

③删除视图:展开YGGL数据库→“视图”,选择要删除的视图,右击选择“删除”选项,确认即可。

相关文档
最新文档