代码之家  ›  专栏  ›  技术社区  ›  Theodore R. Smith

在代码中组织SQL查询的最佳实践?

  •  8
  • Theodore R. Smith  · 技术社区  · 14 年前

    我有一堆漂亮的OOP代码,但是函数有这些巨大的SQL查询。在2010年,我们真的应该仍然在线编写查询,还是有一个抽象,比如MVC,用于PHP中的SQL查询?

    谢谢你的见解。

    Kohana .

    我想我要找的是一个通用的动态SQL设计模式。

    6 回复  |  直到 12 年前
        1
  •  9
  •   rahim asgari    14 年前

    您可以在存储过程中编写查询(select、insert、update、delete等),并且只从php代码中调用这些存储过程,而不是在php文件中编写查询。

    这本书是学习mysql存储过程的一个很好的资源:

    mysql stored procedure programming

        2
  •  3
  •   nmichaels    14 年前

    list ORM软件。

        3
  •  1
  •   Jim    14 年前

    你可以考虑使用 Doctrine ORM . 不知道这是不是你想要的。

        4
  •  1
  •   Otávio Décio    14 年前
        5
  •  1
  •   Alex    14 年前

    但当我在非joomla项目上工作时,我总是使用db2hp,这是netbeanside插件。

    模型的生成需要点击几下,所有的事情都完成了。

    这是一个很棒的开源项目。过来看。

    http://code.google.com/p/db2php/

        6
  •  1
  •   Jan.    14 年前

    这允许一个干净的数据库类使用通用代码来构建SP调用。代理的方法充其量只接受对象作为参数,这样PHP开发人员就可以专注于自己的代码,并在IDE中享受phpdoc的所有好处(自动完成!)。

    例如

    $x = new SEARCH_ITEM();
    $x->name = $blab;
    $resObj = $this->db->search_item($x);
    

    如果你不习惯的话,写SPs是相当多的。

    有好的软件吗?我想有一些很好的抽象包,我不知道。。。我不认为PDO或Adodb是这种意义上的抽象层。克里奥尔语或推进语更像我想的。。查询不是代码的一部分,而是使用PDO之类的抽象层构建的。我没试过克里奥尔语和推进语。