第三章节关系数据库语言SQL1.ppt

  1. 1、本文档共101页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章节关系数据库语言SQL1

* 3.3.4 模式的定义和删除 1、模式的定义 2、模式的删除 * 3.3.4 模式的定义和删除 模式实际上是一个架构,在这个框架中可以包含当前数据库的对象,如基本表、索引、视图、权限等的定义 创建一个架构,并且可以在概念上将其看作是包含表、视图和权限定义的对象 * 1、模式的定义 模式的定义语句 CREATE SCHEMA AUTHORIZATION owner ????[ schema_element [ ...n ] ] schema_element ::= ????{ table_definition | view_definition | grant_statement } CREATE SCHEMA 权限默认授予所有用户,但是他们必须有权创建加入到架构中的对象 AUTHORIZATION owner, 必须是数据库中有效的安全帐户。 * 模式 优点: 提供了在单个语句中创建多个表、视图以及授予对象权限的方法。 创建的对象不必按逻辑顺序出现(引用其它视图的视图除外 ) 缺点 如果在创建任何对象或授予任何权限时发生错误,则不会创建任何对象 T-SQL中不支持在SCHEMA中创建索引 * 模式定义的例子 例:为教学数据库定义一个名为ss的模式,并在这个模式内定义stub表、scb表和cb表的结构 * 模式定义的例子 CREATE SCHEMA ss AUTHORIZATION student CREATE TABLE stub ( Sno char(10) PRIMARY KEY , Sname char(6) not null ) CREATE TABLE scb ( Sno char(10) REFERENCES stub(Sno) ON DELETE CASCADE ON UPDATE CASCADE, Cno char(10) REFERENCES cb(Cno) , grade int check(grade between 0 and 100), CONSTRAINT PK_scb PRIMARY KEY (Sno,Cno)) CREATE TABLE cb ( Cno char(10) PRIMARY KEY , Cname char(50) not null ) CREATE VIEW S_SC_C AS SELECT Sname,Cname,grade FROM stub,scb,cb WHERE stub.Sno=scb.Sno AND cb.Cno=scb.Cno 在模式中创建的对象是当前数据库中的对象 SQL Server不支持在SCHEMA中创建索引 在模式中创建的对象不必按逻辑顺序出现,但引用其它视图的视图除外。 * 2、模式的删除 模式删除语句 DROP SCHEMA 模式名 CASCADE|RESTRICT 例. 删除模式ss DROP SCHEMA ss RESTRICT 或 DROP SCHEMA ss CASCADE * * ALTER TABLE语句实例 ALTER TABLE 学生成绩表 DROP CONSTRAINT FK_学号 ALTER TABLE 学生成绩表 ADD CONSTRAINT FK_学号 FOREIGN KEY(学号) REFERENCES 学生情况表 (学号) ON DELETE CASCADE ON UPDATE CASCADE 注意:如果要修改约束的定义,必须先删除后增加 * 3.表的删除 (1)使用企业管理器删除表 (2)使用SQL删除表 * 使用SQL删除表 删除表DROP DROP TABLE table_name 删除表,将基本表的定义、表中的数据、索引,以及由此表导出的视图定义都被删除。 * DROP TABLE语句实例 例如,删除学生情况表 DROP TABLE 学生成绩表 DROP TABLE 学生情况表 注意:要删除带有参照完整性约束的被参照表,必须先删除参照表 * 3.3 SQL数据定义语言DDL 3.3.1 数据库的定义、修改和删除 3.3.2 基本表的定义、修改和删除 3.3.3 创建和管理索引 3.3.4 模式的定义和删除 * 3.3.3 创建和管理索引 1 索引的概念 2 索引的分类 3 索引的创建 4 删除索引 * 1 索引的概念 索引是

文档评论(0)

junjun37473 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档