问题标签 [doctrine-dbal]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
69 浏览

laravel - Doctorine/Dbal - 更新表迁移在整数上添加不需要的“自动增量”(不是增量)

我正在使用 Laravel 6.6.0 和 Doctrine/Dbal 2.10。

我需要更新迁移,并遵循文档中的信息。

我有一个小的无符号非自动递增整数,我需要将其更改为整数。

我实际上希望它是mediumint,但我从 Laravel 文档中了解到这是不支持的。

只有以下列类型可以“更改”:bigInteger、binary、boolean、date、dateTime、dateTimeTz、decimal、integer、json、longText、mediumText、smallInteger、string、text、time、unsignedBigInteger、unsignedInteger 和 unsignedSmallInteger。我的初始迁移如下:

并安装了 dbal 包,我正在尝试以下迁移来更新membership_code列:

但是当我运行 migrate 命令时,我得到以下信息:

我不明白为什么它会增加AUTO_INCREMENT迁移?

我没有它作为一种increments类型,那为什么要添加它?

0 投票
1 回答
66 浏览

laravel - 如何在 Laravel 中将可空列更改为具有默认值?

我想将 Laravel 中的一些表列从可为空更改为具有默认值。我安装了学说/dbal,并创建了一个新的迁移,其中包含我想要更改的以下列(以前可以为空):

然而,这似乎并没有做任何事情。有可能吗?谢谢!

0 投票
1 回答
285 浏览

php - Doctrine DBAL、diff 命令和枚举类型

我正在使用 symfony 5.1、教义捆绑包 2.1.2 和教义迁移捆绑包 2.2。我没有使用 ORM 并定义我自己的模式。要添加枚举类型,我使用以下代码:

然后每个枚举扩展这个抽象类来设置值。

创作不是问题。当我运行迁移差异命令时,我收到以下错误消息:

请求的未知数据库类型枚举,Doctrine\DBAL\Platforms\MySQL57Platform 可能不支持它。

有什么想法可以创建一个包含对枚举本身的任何更改的差异吗?

0 投票
1 回答
7485 浏览

php - 既然不推荐使用 fetchAll() 和 FetchMode,如何将结果提取到自定义对象中?

在一些现有代码上,我有以下语句(经过相当长的查询构建练习):

这有效(到目前为止),但我现在看到两者fetchAll()FetchMode自 DBAL 2.11 以来已弃用:

为了使我的代码尽可能向前兼容,如何编写此代码以获取水合到自定义对象中的结果?我是否必须根据结果编写自定义补水逻辑,或者 DBAL 可以为我做这件事吗?

0 投票
2 回答
249 浏览

typo3 - TYPO3:使用 TYPO3 Querybuilder 在 OrderBy 中使用 IS NULL 和 COALESCE

我想使用查询

在我的控制器中。为此,我使用这样的查询构建器:

我尝试以这种方式添加 ORDERBY:

但这不起作用。是否可以在 TYPO3 Querybuilder 中执行此操作,或者是否有其他解决方案?

0 投票
1 回答
1049 浏览

php - 不推荐使用的 ping() 的替代方案

Doctrine\DBAL\Connection::ping()

被标记为@deprecated

我发现这个提交介绍了它,但没有给出关于这个方法的后继者的信息。

我想知道此功能的预期替代方案。

我应该依靠isConnected()吗?

0 投票
0 回答
116 浏览

laravel - 请求了未知的列类型“枚举”。您使用的任何 Doctrine 类型都必须在 \Doctrine\DBAL\Types\Type::addType() 中注册

如何更改列类型 ENUM ..?我想向 ENUM 添加一些额外的类型,但它显示这样的错误

我的第一次迁移

第二次迁移

0 投票
1 回答
191 浏览

php - Doctrine DBAL 2.13 $statement->execute() 返回 bool(而不是 Result)

自 Doctrine DBAL 2.13 发布以来,已按此处所述添加了弃用。

虽然获取结果的旧方式是这样的:

新方法是这样的:

我想更新我的代码以准备为学说/dbal 3.0 准备,但$statement->execute()不返回结果集,而只是返回一个布尔值,因此没有什么可迭代的,即使发行说明指出:

DBAL 3.0 从 Statement API 中提取所有 fetch-methods 并将它们移动到从 Statement::execute 返回的新 Result API。我们已将此 A​​PI 向后移植到 2.13

那么这是否意味着反向移植失败或者我错过了什么?

0 投票
0 回答
71 浏览

php - 使用 Doctrine querybuilder 查询元组

给定一个具有以下布局的数组:

以及具有以下布局的表格:

如何构建一个 Doctrine 查询来查找所有匹配的company_uuid行?aid我尝试了以下方法:

但是当然,这会导致异常"Array to string conversion"。似乎没有允许嵌套数组/元组的类型。

0 投票
2 回答
90 浏览

doctrine-orm - 如何从 Doctrine sql 查询中映射列名?

我使用查询生成器创建了一个查询,如下所示:

结果如下所示:

我想将其作为本机查询执行,但我必须找出如何映射s1, s2id, name.