数据库中的Schema是什么?
数据库中的Schema是什么?
schema
英 [ˈski:mə] 美 [ˈskimə] n. 概要,计划,图表;
⽤数据库术语来说,模式(读作“ skee-muh”或“ skee-mah”)是的组织和结构。两个模式和图式可以作为复数形式。
模式包含模式对象,可以是,,数据类型,,,,,等。
数据库模式可以⽤可视化的图表表⽰,该图表显⽰了数据库对象及其相互之间的关系。
表⽰⼩型三表数据库的基本架构图。
上⾯是模式图的简单⽰例。它显⽰了三个表,以及它们的数据类型,表之间的关系以及它们的主键和外键。
这是数据库架构的更复杂的⽰例:
Sakila⽰例数据库的数据库架构图。
在这种情况下,架构图已分为四个部分:
客户数据:与客户有关的数据,例如其姓名,地址等
业务:开展业务所需的数据,例如⼈员,商店位置,付款明细等
库存:所有产品的详细信息。在这种情况下,产品是电影,因此它包含诸如电影标题,其类别,演员等数据。
视图:⽤于评估的数据的特殊视图。
因此,通过查看这些架构图,我们可以继续创建数据库。实际上,MySQL Workbench允许您。然后,您可以。您甚⾄可以。
模式和数据库是同⼀件事吗?
当涉及到数据库时,关于模式有很多困惑。经常会出现⼀个问题,即模式和数据库之间是否存在差异,如果存在差异,会有什么区别。取决于供应商
造成混乱的部分原因是数据库系统倾向于以⾃⼰的⽅式处理模式。
在指出,物理,"⼀个模式是与数据库的代名词"。因此,模式和数据库是同⼀件事。
但是,指出某些对象可以存储在数据库中,⽽不能存储在模式中。因此,模式和数据库是两件事。
根据此,架构是数据库内部的⼀个单独实体。因此,它们是两件事。
因此,根据所使⽤的RDBMS,架构和数据库可能相同,也可能不同。
SQL标准呢?
在定义了⼀个模式作为 "描述符的持久性,命名集合"。
如果您之前感到困惑,希望我不仅让事情变得更糟...
⼴义
造成混淆的另⼀个原因可能是由于术语图式具有如此⼴泛的含义这⼀事实。它在不同上下⽂中具有不同的含义。
图式⼀词起源于希腊语skhēma,意为形式,图形,形状或计划。
图式在⼼理学中⽤于描述思想或⾏为的有组织的模式,该模式将信息的类别及其之间的关系组织起来。
在设计数据库之前,我们还需要查看信息的类别及其之间的关系。在从DBMS内的物理模式开始之前,我们需要创建⼀个概念性模式。在软件开发中,当讨论模式时,可以讨论概念模式,物理模式,内部模式,外部模式,逻辑模式等。这些每个都有其特定的含义。
DBMS的架构定义
这是来⾃三个主要数据库系统的模式的快速定义:
的MySQL
从概念上讲,模式是⼀组相互关联的数据库对象,例如表,表列,列的数据类型,索引,外键等。
…。
实际上,在MySQL中,模式与数据库是同义词。您可以⽤MySQL SQL语法SCHEMA代替关键字DATABASE,例如使⽤CREATE SCHEMA代替CREATE DATABASE。
资料来源:。MySQL 5.7参考⼿册。MySQL的。2016年6⽉6⽇检索。
SQL服务器
表的名称,字段,数据类型以及数据库的主键和外键。
。SQL Server 2016技术⽂档。Microsoft开发⼈员⽹络。2016年6⽉6⽇检索。
甲⾻⽂数据库
的模式系统与其他系统完全不同。Oracle的模式与数据库⽤户密切相关。
甲模式是数据的逻辑结构,或架构对象的集合。模式归数据库⽤户所有,并且与该⽤户同名。每个⽤户都拥有⼀个架构。
资料来源:。Oracle数据库在线⽂档12c第1版(12.1)。Oracle帮助中⼼。2016年6⽉6⽇检索。
有关本⽂提供了更多详细信息。
数据库是软件吗创建模式
尽管在定义模式⽅⾯存在差异,但上述三个DBMS均⽀持该CREATE SCHEMA语句。
这就是相似性结束的地⽅。
的MySQL
在MySQL中,创建⼀个数据库。
这是因为CREATE SCHEMA是的同义词CREATE DATABASE。换句话说,您可以使⽤CREATE SCHEMA或CREATE DATABASE做同样的事情。甲⾻⽂数据库
在Oracle数据库中,该语句实际上并未创建模式。这是因为已经为每个数据库⽤户创建了⼀个架构。
在Oracle中,该语句创建架构。
在Oracle中,CREATE SCHEMA语句使您可以使⽤表和视图填充架构,并为这些对象授予特权,⽽不必在多个事务中发出多个SQL语句。SQL服务器
在SQL Server中,将通过您提供的名称创建⼀个架构。
与MySQL不同,该CREATE SCHEMA语句创建⼀个与数据库分开定义的架构。
与Oracle不同,该CREATE SCHEMA语句实际上创建模式。
在SQL Server中,⼀旦创建了架构,便可以向其中添加⽤户和对象。
结论
术语架构可以在许多不同的上下⽂中使⽤。在特定的数据库管理系统中创建模式的上下⽂中,您需要与DBMS⼀起定义模式。⽽且,当您切换到新的DBMS时,请务必查看该系统如何定义架构。
,,,
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论