0

对于需要稳定底层系统的生产系统,我需要想出一些想法来让 oracle 与 cakephp 一起工作,否则我们将不得不转移到其他框架,我想防止这种情况(多个软件包已经在运行在蛋糕上)。

我已经阅读了有关使用 1.3 数据源并对其进行修改以使其与 2.x 一起使用的信息,现在这一切都不是正式的、稳定的和经过全面测试的,缺少功能等等。

在可以制作官方数据源之前,这只是一个想法,但是使用 oracle 数据源作为接口将教义用作 DBAL 呢?

就我个人而言,我对原则没有任何经验,但我听说过它的好消息,是否可以通过最少的努力将数据源用作传递类并在后台使用原则?

这样,我们就有了一个经过验证的底层 DBAL,并且数据源仅充当传递类。

快速浏览他们的网站后,您可以执行以下操作:

$qb = $conn->createQueryBuilder()
->update('users', 'u')
->set('u.password', md5('password'))
->where('u.id = ?');

$qb = $conn->createQueryBuilder()
->delete('users', 'u')
->where('u.id = :user_id');
->setParameter(':user_id', 1);

这看起来与条件数组完全一样,不知道 groupby 和 joins(这就是我在这里的原因)

你们怎么看?,通过经过验证的 dbal 获得蛋糕预言机支持的可行选择?

4

2 回答 2

2

CakePHP 3 现在通过CakePHP 3 Driver for Oracle Database获得了 Oracle 支持,Oracle 11g 和 12c 都兼容,并提供了对光标、方法、序列等主要功能的访问。CakePHP 分页也是开箱即用的。查看:

谢谢,

于 2016-03-15T11:12:56.203 回答
0

是否可以通过最少的努力将数据源用作传递类并在后台使用学说?

是的,这是可能的,但不是用最小的努力。您仍然必须直接将 CakePHP 查询转换为 oracle 查询语法,或者使用教义 API 重新构建查询。我认为这可能比在不使用本地 oracle 语法的情况下完成完整的 oracle 驱动程序花费的时间更少,但仍然需要很多时间。

我没有检查让 1.3 驱动程序与 2.0 一起工作需要多少努力,但如果已经有人在上面,你可以尝试测试它,检查是否有单元测试。如果没有单元测试……嗯……如果有的话,你可能会通过为这个项目做出贡献并帮助完成驱动程序来更快。

因此,如果您正在寻找快速解决方案,我认为没有任何解决方案。如果您有资源,有专业的 CakePHP 公司可以帮助您快速构建驱动程序。让我知道这是否适合您。

于 2013-07-04T12:47:01.593 回答