Php codeigniter的哪个ORM?

Php codeigniter的哪个ORM?,php,sql,orm,codeigniter,Php,Sql,Orm,Codeigniter,下面的引文终于说服了我们。在过去,我不太喜欢ORM,并认为它是一种执行sql的愚蠢方式。在sql中处理分层数据是我不想处理的难题 我们有这些“对象-关系映射器”的东西是有原因的,这是因为一个被称为对象-关系阻抗不匹配的问题。基本上,用于确保数据库完好无损的数据库的正式数学模型遵循一个包含行和列以及对其他表的引用的表系统,而我们今天使用的大多数编程语言中的数据结构以嵌套的树状结构操纵数据。这很像电子表格和XML文档之间的区别,或者分类账和族谱图之间的区别。- 我想用最小的努力来设置的东西。我的大多

下面的引文终于说服了我们。在过去,我不太喜欢ORM,并认为它是一种执行sql的愚蠢方式。在sql中处理分层数据是我不想处理的难题

我们有这些“对象-关系映射器”的东西是有原因的,这是因为一个被称为对象-关系阻抗不匹配的问题。基本上,用于确保数据库完好无损的数据库的正式数学模型遵循一个包含行和列以及对其他表的引用的表系统,而我们今天使用的大多数编程语言中的数据结构以嵌套的树状结构操纵数据。这很像电子表格和XML文档之间的区别,或者分类账和族谱图之间的区别。-

我想用最小的努力来设置的东西。我的大多数项目都很小,所以当我只在少数查询中使用模型时,我不想花太多时间定义模型

我使用codeigniter作为php框架,使用MySQL作为数据库。

我推荐


,它非常流行,因此您将拥有相关知识,并能够在其他framworks中使用它。

以下是我使用的

  • 怎么样

    我认为最初的DataMapper(来自stensi)不再处于开发阶段。(如果我错了,请有人纠正我)Datamapper Over热心版很容易使用Codeigniter


    我相信条令也能很好地工作,但我不确定使用Codeigniter进行设置有多容易。

    条令非常出色,非常容易在CI中设置和使用。有三种方法可以将其集成1)CI wiki中描述的方法2)作为插件3)使用挂钩。我不喜欢选项1,因为它会弄乱CI系统文件。选项2非常简单,也是我目前使用的。安装说明见www.phpandstuff.com。我从未尝试过选项3,但它听起来很有趣-

    我认为您应该尝试使用本机CI编写的,而且易于配置和使用。我认为这比教条好

    在没有任何递归或分层查询支持的数据库中,可能存在重复和分层数据是您的问题。PostgreSQL将是一个可行的替代方案,尽管现在有免费版本的SQL Server和Oracle…@OMG Ponies,所以基本上问题是mySQL不支持对象,所以获取数据的唯一方法是递归查询或进行一系列左连接,最终得到冗余数据?我只简要介绍了oracle,存储过程是实现这一点的正确工具,或者查询是否可以实际返回对象中的分层数据?oracle从v2开始就支持分层查询,使用
    connectby
    语法。ANSI的方法是使用递归with子句,Oracle直到11g R2才支持该子句,而SQL Server 2005+则支持该子句(这导致ANSI接受该子句)。我不清楚PostgreSQL的哪个版本是从Support-8.x开始的。@OGM Ponies我查了一下oracle示例,它看起来非常简洁。我想获得任意长度的树的最简单方法是左连接并使用一些php循环将所有内容移动到嵌套数组中。我认为这比为我的小项目设置ORM要容易。任何东西都胜过递归查询。不幸的是,我一直在使用MySQL,但阅读递归和连接非常有趣,谢谢。我正在通读条令文件。有很多东西需要学习,但是如果我可以在任何框架上使用它,那么它将是值得的