除了 SQL Server 之外,其他 DBMS 中是不是使用了模式?

Posted

技术标签:

【中文标题】除了 SQL Server 之外,其他 DBMS 中是不是使用了模式?【英文标题】:Are schemas used in other DBMS' than SQL Server?除了 SQL Server 之外,其他 DBMS 中是否使用了模式? 【发布时间】:2012-06-07 11:33:24 【问题描述】:

自 SQL Server 2005 起,schemas 充当对象(表、视图等)的根命名空间。

我的问题是:其他 DBMS 中是否有等价物?我特别感兴趣:

PostgreSQL,甲骨文,SQL Server 支持架构 mysql: 不支持模式; create schema ... is a synonym for create database ...。 SQLite 不支持模式; create schema ... 导致错误。

编辑:我使用 OMG Ponies 的回答来更新上面的内容。

【问题讨论】:

【参考方案1】:

是的,PostgreSQL supports schemas 虽然我不知道支持何时开始。 Oracle 也支持模式。

MySQL 没有——CREATE SCHEMA is an alias for CREATE DATABASE。我不了解 SQLite,但鉴于其支持有限,我不这么认为。

【讨论】:

自 version 7.3, released on 2002-11-27 以来,Schema 一直在 PostgreSQL 中。 我几乎要争辩说,在 MySQL 中只有一个数据库,CREATE DATABASECREATE SCHEMA 的同义词。 我赞同 Craig 对此的看法。【参考方案2】:

其他支持架构的 DBMS

DB2 H2 数据库 HSQLDB 阿帕奇德比 LucidDB Mimer SQL 垂直

支持模式的 DBMS:

火鸟 长方体 Teradata(CREATE SCHEMA 是 CREATE DATABASE 的同义词)

【讨论】:

以上是关于除了 SQL Server 之外,其他 DBMS 中是不是使用了模式?的主要内容,如果未能解决你的问题,请参考以下文章

SQL-Server使用点滴

SQL - 获取除了在where条件下过滤的记录之外的其他记录。

SQL Server 的“独立”补充

SQL Server 索引命名约定 [关闭]

除了依靠弹性搜索聚合之外,如何获取其他数据?

清除并填充SQL Server中的表