- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 3.6.2 收回权限 向用户授予的权限可以由DBA或者授权者用REVOKE语句收回。REVOKE的一般语句格式为:REVOKE 权限[,权限][ON对象类型对象名]FROM用户[,用户]例3-71 把用户USER3的修改SN的权限收回:REVOKE UPDATE(SN) ON TABLE S FROM USER3; * 3.6.2 收回权限 例3-72 收回所有用户对基本表SC的查询权限:REVOKE SELECT ON TABLE SC FROM PUBIC;例3-73 把用户USER4对基本表SC的插入(INSERT)权限收回:REVOKE INSERT ON TABLE SC FROM USER4; * 3.4.2 数据插入 SQL插入语句的一般形式为:INSERT INTO 基表名〉[〈列名〉[,〈列名〉]…]VALUES (常量[常量]…)|子查询该语句的含义是执行一个插入操作,将VALUES所给出的值插入INTO所指定的表中。 * 3.4.2 数据插入 3-52 将一个学生新记录(S#:S35,Sn:liu,Sa:20,Sd:CS)插入到表S中:INSERTINTO SVALUES (’S35’, ’liu’, ’20’, ’CS’);例3-53 在SC中插入记录(S23,C10):INSERTINTO SC(S#,C#)VALUES (’S23’, ’C10’); * 3.4.3 数据修改 SQL 修改语句的一般格式为:UPDATE 基本表名SET 列名=表达式[,列名=表达式]…WHERE 逻辑条件该语句的含义是修改(UPDATE)指定基本表中满足(WHERE)逻辑条件的元组,并把这些元组按照SET子句中的表达式修改相应列上的值。 * 3.4.3 数据修改 (1)修改单个元组的值例3-54 将学号为S16的学生系别改为CS:UPDATE SSET Sd =’CS’WHERE S# =’S16’; * 3.4.3 数据修改 (2)修改多个元组的值例3-55 将数学系的学生年龄均加一岁: UPDATE SSET Sa = Sa + 1WHERE Sd =’MA’; * 3.4.3 数据修改 例3-56 将计算机系学生的成绩全部置为零:UPDATE SCSET G =’0’WHERE ’CS’= (SELECT Sd FROM S WHERE S.S# = SC.S#); * 3.5 视图管理 SQL的视图管理机制具有十分重要的意义,其主要表现在以下方面:● 简化用户操作 视图简化了用户观点,用户不必了解整个模式,仅需将注意力集中于它所关注的领域,大大方便了使用。●用户可以多角度看待同一数据 对于同一基本表,不同的用户可以建立不同的视图,从而以不同的观点以多角度来观察和看待同一数据,扩大了数据的应用界面。 * 3.5 视图管理 ● 提供一定的逻辑独立性 由于视图的存在,当基本表发生改变时,例如对关系模式进行扩充或者分解,应用程序不需要改变,因为新建立的视图可以定义用户原来的各种关系,使得用户外模式保持不变,用户应用程序通过视图机制仍然能够查找数据,从而在一定程度上提供了数据的逻辑独立性。● 对机密数据提供安全保护 在设计数据库应用系统时,对不同的用户定义不同的视图,使得机密数据不出现在不应当看到这些数据的用户视图上,从而视图机制就自动提供了机密数据的安全保护功能。 * 1.视图创建 3.5.1 视图定义 (1)一般视图创建SQL的视图可由创建视图语句予以建立,其一般格式如下:CREATE VIEW 视图名([列名[,列名]…]) AS 映像语句 [WITH CHECK OPTION];其中,映像语句可以是任意复杂的SELECT语句,但其中不能含有ORDER BY子句和DISTINCT短语。 * 3.5.1 视图定义 组成视图的属性列要么全部省略,要么全部指定。如果视图定义中省略属性列名,则隐含该视图由映像语句中SELECT子句的目标列组成。但在下列情况下必须明确指定组成视图的所有属性列名:● 某个目标列不是单纯的属性列名,而是聚集函数或表达式。● 多表连接导出的视图中有几个同名列作为该视图的属性列名。● 需要在视图中为某个列启用更合适的名称。 * 3.5.1 视图定义 例3-57 创建一个计算机系学生的视图:CREATE VIEW CS-S(S#, SN, SD,SA,G)AS SELECT * FROM S WHERE Sd=’CS’ WITH CHECK OPTION; * 3.5
文档评论(0)