Llo*_*nks 261 mysql database schema database-schema
MySQL中的模式和数据库之间有区别吗?在SQL Server中,数据库是与模式相关的更高级别的容器.
我读过这篇文章Create Schema并Create Database在MySQL中做了同样的事情,这使我相信模式和数据库对于相同的对象来说是不同的单词.
egg*_*yal 307
如MySQL词汇表中所定义:
在MySQL中,物理上,模式与数据库是同义词.您可以替换关键字
SCHEMA而不是DATABASEMySQL SQL语法,例如使用CREATE SCHEMA而不是CREATE DATABASE.其他一些数据库产品也有所区别.例如,在Oracle数据库产品中,模式仅表示数据库的一部分:单个用户拥有的表和其他对象.
小智 57
取决于数据库服务器.MySQL不关心,它基本上是一回事.
Oracle,DB2和其他企业级数据库解决方案有所区别.通常,模式是表的集合,而数据库是模式的集合.
在 MySQL模式中是database 的同义词。对于跳到 MySQL 并且第一天就找到这个词schema 的初学者来说,这非常令人困惑,所以大家不用担心,因为两者都是一样的。
当你第一次启动 MySQL 时,你需要创建一个数据库(像任何其他数据库系统一样)来使用,这样你就可以CREATE SCHEMA这只是CREATE DATABASE
在其他一些数据库系统中,模式代表数据库的一部分或表的集合,模式的集合就是一个数据库。
小智 6
PostgreSQL支持模式,模式是数据库的一个子集:https: //www.postgresql.org/docs/current/static/ddl-schemas.html
数据库包含一个或多个命名模式,而模式又包含表.模式还包含其他类型的命名对象,包括数据类型,函数和运算符.相同的对象名称可以在不同的模式中使用而不会发生冲突; 例如,schema1和myschema都可以包含名为mytable的表.与数据库不同,模式不是严格分开的:用户可以访问它们所连接的数据库中的任何模式中的对象,如果他们有权这样做的话.
模式类似于操作系统级别的目录,但模式不能嵌套.
在我看来,MySQL不是一个参考数据库.你永远不应该引用MySQL作为解释.MySQL实现非标准SQL,有时声称它不支持的功能.例如,在MySQL中,CREATE模式只会创建一个DATABASE.这确实是误导用户.
这种词汇被DBA称为"MySQLism".