1

我需要使用生成包含占位符的 SQL 语句的查询生成器。

它应该:

  • 生成包含占位符的 SQL 语句(:placeHolder or ?)
  • 没有对象映射
  • 以字符串或类似形式返回查询
  • 使用所有主要数据库(例如 Oracle、MySQL)

我正在考虑这样的事情:

QueryBuilder::select(
    'db' => 'MySQL'
    'from' => 'users',
    'fields' => array(
         'user_id' => 'id'
    ),
    'where' => array(
        'AND' => array(
             /**
              * ...conditions...
              */
        )
    ),
    'ljoin' => array(
        'Group' => array(
            'from' => 'groups'
             /**
              * ...stuff...
              */
        )
    )
);

我查看了 Doctrine2,但它需要对象映射。还有很多初始配置。我查看了 Doctrine2 DBAL,它不处理 INSERT 查询。

注意:查询是在开发阶段生成的,并为每个支持的数据库引擎保存为纯文本。

先感谢您。

4

2 回答 2

1

在http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/query-builder.html上尝试 Doctrine 2 ORM Query builder 非常通用,并且可以与大多数 DBMS 系统一起使用

于 2012-05-11T13:43:45.443 回答
0

一个例子是 Code Igniter Active Record,你可以构建如下查询:

$this->db->select('field_one, field_two')
    ->from('mytable')
    ->where(array('field' => 'value', 'field' => 'value'))
于 2012-05-11T13:20:33.057 回答