欢迎您访问南华自考网!

SQL Server: 数据库模式(SCHEMA)的应用及其优点

更新时间:2023-11-17 08:02:09作者:51data

本文将介绍数据库模式在SQL Server中的应用及其优势。

在模式中创建一个新表要创建一个像表这样的对象,我们需要指定将在其中创建对象的模式名。例如,以下脚本以不同的模式[HR]、[Admin]和[Fin]创建[TableA]。

SQL Server: 数据库模式(SCHEMA)的应用及其优点

创建TABLEHR。TableA(ID int identity(1,1)主键,[Name] varchar(100))创建表[Admin]。TableA(ID int identity(1,1)主键,[Name] varchar(100))创建表[Fin]。TableA(ID int identity(1,1)主键,[Name] varchar(100))

您可以使用sys.tables和sys.schema系统表来列出表名及其架构。例如,以下代码查询返回[TableA]及其货架模式。

SELECTs.name AS SchemaName,t . name AS tablename from sys . tables tINNER JOIN sys . schemas on t . schema _ id=s . schema _ id where t . name=' TableA '

例子

如果在创建对象时不指定架构,SQL Server将使用默认架构。例如,以下脚本在dbo模式下创建TableA。

创建表TableA(ID int identity(1,1)主键,[Name] varchar(100))

例子

注意:可以在数据库的不同模式中创建名称相似的表。因此,您需要指定表的模式,以便从正确的模式中获取数据。例如,如上所示,我们在所有架构中都有[TableA]。因此,如果您直接选择一条记录而不指定模式,它将在默认的DBO模式中查找该对象。因此,您需要为数据检索或任何操作指定一个模式名,比如SELECT * FROM HR.TableA。

在模式中创建存储过程同样,您可以在指定的模式中创建对象,如存储过程。例如,以下脚本在HR模式下创建一个服务点。

从[HR]创建过程HR.GetEmpDataASBEGINSELECT *。[表a]结束

将对象移动到不同的模式在某些时候,可能需要将对象移动到特定的模式。例如,假设创建了一个新的模式[Org],并且您想要您的[HR]。[TableA]从[HR]架构移到[Org]架构。在这种情况下,可以使用具有以下语法的Alter SCHEMA命令。

ALTER SCHEMA target _ SCHEMA _ name transfer[entity _ type:]secureable _ name;

脚本

创建方案[组织]目标方案组织转移HR.TableA

现在,转移存储过程[HR]。[GetEmpData]到[Org]模式。

更改方案组织转移HR.GetEmpData

执行脚本后,它将以[Org]模式显示存储过程。但是,在SP中,代码仍然指的是[HR]。[TableA]模式。

例子

因此,不应使用ALTER SCHEMA来移动存储过程、函数或视图,因为它可能会引用对象。相反,您可以删除、创建或更改SP,如下所示。

例子

删除架构您可以删除SQL Server数据库中的架构,但该架构不应包含任何对象。例如,如果您尝试删除[Org]模式,它将给出一个错误,说明该模式无法删除,因为GetEmpData对象正在引用它。

例子

因此,您可以将对象转移到不同的模式,或者先删除对象。一旦我们删除或移动了数据库模式中的所有对象,您就可以删除该模式。注意:不能删除系统模式,如dbo、information_schema和sys。

使用数据库模式的优点数据库模式为我们提供了在数据库中创建逻辑对象组的灵活性。如果多个团队使用同一个数据库,我们可以设计不同的模式来分组对象。数据库可以帮助数据库专业人员管理访问,因为可以控制对用户各自模式的访问,而不是提供对整个数据库的访问。您可以更有效地管理数据库,因为它允许多个模式中的相同对象显示为不同的逻辑组。您可以在不同的模式下快速移动对象。模式的所有权可以分配给任何数据库主体或角色,并且所有权也可以转移。它提供了额外的安全层,因为您需要知道正确的对象模式来查询或操作数据。您还可以控制对模式和模式所拥有的对象的访问。

相关文章

为您推荐

政治知识点七年级上册(政治知识点总结)

邓小平理论一、邓小平理论的主要内容 ⭐1、解放思想、实事求是的思想路线解放思想、实事求是的思想路线,有力地推动和保证了改革开放的进行,体现了辩证唯物主义和历史唯物主义的世界观方法论,体现了革命胆略和科学精神的统一,是邓小平理论的活的灵魂,是

2023-11-17 08:02

数据库技术在财务管理中的应用现状(mysql数据库技术与项目应用教程)

【数据库技术是信息系统的一个核心技术,是一种计算机辅助管理数据的方法,它研究如何组织和存储数据,如何高效地获取和处理数据 】数据库技术是通过研究数据库的结构、存储、设计、管理以及应用的基本理论和实现方法,并利用这些理论来实现对数据库中的数据

2023-11-17 08:02

腾讯云数据库产品(腾讯云数据库mysql怎么用)

7月8日,腾讯云正式发布了MySQL 8.0数据库。据悉,该数据库相比MySQL官方版本,无论是单机模式、异步模式还是同步模式下,读写性能都取得了大幅提升。据腾讯云数据库相关负责人介绍,采用MySQL 8.0内核的实例最高QPS(每秒查询率

2023-11-17 08:02

第十三届国际政治经济学论坛“全球发展倡议和全球安全倡议:理论逻辑与实践基础”顺利召开

2022年12月22日,由中国社会科学院世界经济与政治研究所与国际关系学院主办、中国社会科学院国家全球战略智库秘书处承办的第十三届国际政治经济学论坛“全球发展倡议和全球安全倡议:理论逻辑与实践基础”在线上举行。与会专家围绕“全球发展倡议和全

2023-11-17 07:22

数据库工具包DBUtils介绍以及应用示例

以前写过一个有关DBUtil的简介和分页处理,参考连接:DBUtil及分页实现1.概述DBUtils封装了对JDBC的操作,简化了JDBC操作,可以少写代码。在不使用框架的情况下,使用DBUtils的概率非常大。DBUtils三个核心功能介

2023-11-17 07:22

材料科学与工程最新进展(材料领域最新科研进展)

我国长期依赖于欧美的材料数据库,无法及时获得关键材料数据,因此学科发展受到制约,慢人一步。发展具有我国自主知识产权的材料库,可补全我国的材料研发链条,健全材料研发完整的生态体系,深度提升我国的材料研发生产力。最近,中国科学院物理研究所/北京

2023-11-17 07:22

加载中...