哪种数据库模式定义是正确的?

问题描述 投票:0回答:2

来自https://stackoverflow.com/questions/2674222/what-is- Purpose-of-database-schema的答案中的这些定义是不同的。

哪个是正确的?

SQL 模式是对象的容器。例如,您可能有一个大型企业应用程序,那么最好将不同的模式用于不同的目的(例如,将 HR 相关表放入 HR 模式,将会计相关表放入会计模式等)。任何用户都可以拥有模式,并且所有权是可以转让的。 [https://stackoverflow.com/a/2674259,部分来自http://msdn.microsoft.com/en-us/library/ms190387.aspx]

数据库模式是描述数据库整个配置的定义,包括其所有表、关系、索引等。 [http://en.wikipedia.org/wiki/Database_schema]

sql-server
2个回答
11
投票

两者都是正确的。 “模式”有多种含义。你的第一个含义是你通过

CREATE SCHEMA
获得的模式——对象容器。你的第二个含义是独立于 SQL Server 的“数据库模式”的一般含义。通常,从上下文中可以清楚地看出其含义——“数据库模式”通常是单数,而单个数据库中的“模式”指的是容器。因此,如果您想特别困惑,您可以讨论其中包含多个模式1的数据库模式2


2
投票

简单来说,

Schema
database instance

的同义词

您可以在关系型数据库(例如MySql)中使用

CREATE SCHEMA MYDATABASE
CREATE DATABASE MYDATABASE
来创建新的数据库实例。

Schema
这个词曾经被认为过于学术化,后来就被废弃了。

两者都不错,但是

Schema
听起来有点极客。

© www.soinside.com 2019 - 2024. All rights reserved.