问题标签 [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.
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
类型,那为什么要添加它?
laravel - 如何在 Laravel 中将可空列更改为具有默认值?
我想将 Laravel 中的一些表列从可为空更改为具有默认值。我安装了学说/dbal,并创建了一个新的迁移,其中包含我想要更改的以下列(以前可以为空):
然而,这似乎并没有做任何事情。有可能吗?谢谢!
php - Doctrine DBAL、diff 命令和枚举类型
我正在使用 symfony 5.1、教义捆绑包 2.1.2 和教义迁移捆绑包 2.2。我没有使用 ORM 并定义我自己的模式。要添加枚举类型,我使用以下代码:
然后每个枚举扩展这个抽象类来设置值。
创作不是问题。当我运行迁移差异命令时,我收到以下错误消息:
请求的未知数据库类型枚举,Doctrine\DBAL\Platforms\MySQL57Platform 可能不支持它。
有什么想法可以创建一个包含对枚举本身的任何更改的差异吗?
php - 既然不推荐使用 fetchAll() 和 FetchMode,如何将结果提取到自定义对象中?
在一些现有代码上,我有以下语句(经过相当长的查询构建练习):
这有效(到目前为止),但我现在看到两者fetchAll()
和FetchMode
自 DBAL 2.11 以来已弃用:
为了使我的代码尽可能向前兼容,如何编写此代码以获取水合到自定义对象中的结果?我是否必须根据结果编写自定义补水逻辑,或者 DBAL 可以为我做这件事吗?
typo3 - TYPO3:使用 TYPO3 Querybuilder 在 OrderBy 中使用 IS NULL 和 COALESCE
我想使用查询
在我的控制器中。为此,我使用这样的查询构建器:
我尝试以这种方式添加 ORDERBY:
但这不起作用。是否可以在 TYPO3 Querybuilder 中执行此操作,或者是否有其他解决方案?
php - 不推荐使用的 ping() 的替代方案
Doctrine\DBAL\Connection::ping()
我发现这个提交介绍了它,但没有给出关于这个方法的后继者的信息。
我想知道此功能的预期替代方案。
我应该依靠isConnected()
吗?
laravel - 请求了未知的列类型“枚举”。您使用的任何 Doctrine 类型都必须在 \Doctrine\DBAL\Types\Type::addType() 中注册
如何更改列类型 ENUM ..?我想向 ENUM 添加一些额外的类型,但它显示这样的错误
我的第一次迁移
第二次迁移
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。我们已将此 API 向后移植到 2.13
那么这是否意味着反向移植失败或者我错过了什么?
php - 使用 Doctrine querybuilder 查询元组
给定一个具有以下布局的数组:
以及具有以下布局的表格:
如何构建一个 Doctrine 查询来查找所有匹配的company_uuid
行?aid
我尝试了以下方法:
但是当然,这会导致异常"Array to string conversion"
。似乎没有允许嵌套数组/元组的类型。
doctrine-orm - 如何从 Doctrine sql 查询中映射列名?
我使用查询生成器创建了一个查询,如下所示:
结果如下所示:
我想将其作为本机查询执行,但我必须找出如何映射s1, s2
到id, name
.