MYSQL是否支持面向对象的数据库?

时间:2011-10-26 11:21:27

标签: php mysql database

MYSQL是支持面向对象的数据库还是仅支持关系数据库?

3 个答案:

答案 0 :(得分:4)

不幸的是,据我所知,MySQL没有任何方法以很好的方式存储对象,除了blob,这在我的诚实意见中并不是很好:):

答案 1 :(得分:3)

MySQL是一个关系数据库,而不是面向对象的数据库。

您可以使用ORM(对象关系映射)库从代码中以面向对象的方式使用MySQL等数据库。一个很好的例子是Doctrine for PHP。 http://www.doctrine-project.org/

目前,面向对象的数据库尚未真正流行。关系数据库是迄今为止最流行的NoSQL,也是一些浪潮。

如果您决定使用OODB Wikipedia有一个面向对象的数据库列表,您可能需要查看 http://en.wikipedia.org/wiki/List_of_object_database_management_systems

答案 2 :(得分:0)

SQL标准(很久以前)添加了将复杂的,用户定义的类型作为表或表行的属性(所谓的类型表)的能力。这些有时被称为“对象关系”扩展或类似。大多数商业RDBMS(Oracle,SQL服务器,DB2等)都支持这些 - Postgres也是如此。但是,据我所知,MySQL没有(最后我检查的是版本5.7)。但是,标准中还添加了其他内容,例如支持XML和Json类型。 MySQL确实支持Json,并且(非常)有限的XML支持。据我所知,纯粹面向对象的数据库确实来去匆匆,现在它们是“利基”产品。至于NoSQL,它更多的是关于分布式设置和缺少架构而不是特定的数据模型 - 事实上,没有这样的事情