模式的定义是数据库中数据的逻辑结构.它由用户拥有,并且与数据库用户具有相同的名称.模式包含表的名称,它的列类型等.数据字典也只包含元数据(在数据库级别而不是在用户级别).架构和数据字典之间的确切区别是什么?
这些定义来自我的经验(程序员20年以上,7年咨询,有些时候作为独立承包商).因人而异.
"Schema"描述了结构.它可能包含描述结构方面的元数据.
"数据字典"将上下文与结构的元素相关联.它还可能包含描述关系方面的元数据.
例如,A'person'可能由通常的字段描述 - last_name,first_name,honorific等.如果与另一个人有关系 - 父亲,丈夫等 - 这些值可能被视为"架构数据",因为关系受特定值约束.
"人"是"学生"或"教师"或"囚犯"等 - 由特定系统的数据字典定义.
通常“模式”的意思是“在 RDBMS 内部”。这通常意味着一些技术最低要求。也许补充一个“评论”字段。
数据字典通常意味着“在 RDBMS 之外”。这通常意味着一些更大、更复杂的结构,不限于 RDBMS 表/列技术。
如果您有两个特定模式的特定示例(例如 Oracle)和一个特定的数据字典来进行比较,您就会有一个“确切”的差异。