18143453325 在线咨询 在线咨询
18143453325 在线咨询
所在位置: 首页 > 营销资讯 > 信息时代 > SQL模式语句(数据库)

SQL模式语句(数据库)

时间:2022-11-08 04:30:01 | 来源:信息时代

时间:2022-11-08 04:30:01 来源:信息时代

    SQL模式语句 : 可能对SQL模式产生持久影响的语句,其功能包括SQL模式及SQL模式对象的定义、操纵和撤销。
在SQL标准中,数据库对象都有相应的对象描述符,描述符用于标识该对象并记录其相关的描述信息。根据SQL2003第一部分“框架”的定义,SQL环境中的描述符是这样组织的: 每个SQL环境中包含0到多个目录,它是在一个SQL环境中的SQL模式、外部服务器描述符、外部数据封装器描述符的命名集合;每个目录包含一个或多个SQL模式(通常简称为模式),它是一个持久的、描述符的命名集合;每个模式包含0到多个对象的描述符,任何其描述符属于某个SQL模式的对象被称为SQL模式对象。SQL模式对象的类型有多种,并且随着SQL标准版本的更新还在不断地增加。在SQL2003第二部分“基础”中,SQL模式对象的类型包括表、视图、域、约束、特权、字符集、排序、翻译、用户定义类型、例程及序列。与之相对应的SQL模式语句共有41条。SQL模式的定义和撤销分别由模式定义和撤销模式语句实现。模式定义语句创建一个与某授权标识符相关联的模式。模式、模式中的模式对象,以及由模式对象描述的SQL数据被称为是与该模式关联的授权标识符所拥有的。撤销模式语句撤销一个模式,同时撤销该模式中包含的所有模式对象和所有引用了该模式的SQL调用例程,并删除这些模式对象对应的所有SQL数据。
除特权对象外,对于SQL模式中的其他每类对象,SQL标准都规定了其对应的定义和撤销语句,对有些对象还提供了修改其部分特性的变更语句。这些语句占SQL模式语句的大部分,并且还有可能随着模式对象类型的增加而增加。这些语句的语法细节各异,可分为三类: 模式对象定义语句、撤销模式对象语句和变更模式对象语句。
模式对象定义语句用于各种模式对象的定义。这类语句均以保留字CREATE开头,对应于要定义的不同对象类型,其后续的语法各不相同。语句的一般格式为: “CREATE对象类型保留字 对象名……”。其中,“对象类型保留字”表示要创建的对象类型,如保留字TABLE表示表,VIEW表示视图等。如:
CREATE TABLE TAB_1(
COL_1 INT PRIMARY KEY,
COL_2 CHAR(8));
该语句将在当前模式中创建一个表名为TAB_1,包含COL_1和COL_2两个列,且主键为COL_1的基表。
模式对象定义语句可包含于模式定义语句中,也可以是一条独立的SQL语句。当它为一条独立的SQL语句时,其所属模式根据相关的规则来确定。
撤销模式对象语句用于各类模式对象的撤销,该类语句的执行将导致模式对象及其相关的SQL数据从数据库中删除。语句以保留字DROP开头,其一般格式为:“DROP 对象类型保留字 对象名……”。DROP语句中可指定撤销行为RESTRICT或CASCADE,前者要求语句只能在不影响其他对象的情况下被撤销; 后者则会将因该对象的撤销而失效的其他对象一同撤销。如:
DROP TABLE TAB_1 RESTRICT;
该语句只能在TAB_1没有任何真子表且不被任何其他对象引用的条件下执行,执行后将从当前模式中删除TAB 1及表中的所有数据。
变更模式对象语句用于变更模式对象的结构或某些特征。语句以保留字ALTER开头,其一般格式为: “ALTER 对象类型保留字 对象名……”。需要指出的是,对模式对象的变更是受到很多限制的,因此并非对任何模式对象的任何特征都可以进行修改。在SQL2003第二部分“基础”中,可用变更模式对象语句进行修改的模式对象只有表、域、用户定义类型、SQL调用例程和序列发生器。如:
ALTER TABLE TAB_1
ADD COLUMN COL_3 DATE;
该语句在TAB_1中增加新的一列COL_3,并对表中已有的每一行按照规则计算该列的值。
特权为非命名对象,其描述符的创建与撤销是通过权限的授予和回收的实现的。SQL模式语句中与特权描述符的操纵相关的语句有授予特权语句、回收语句、角色定义、授予角色语句和撤销角色语句,具体内容可参见SQL访问控制。

74
73
25
news

版权所有© 亿企邦 1997-2022 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭