【发布时间】:2018-12-01 04:24:24
【问题描述】:
我正在更新 Symfony 应用程序中的架构。这个应用不是我写的,所以我在摸索。
我已经用php bin/console doctrine:schema:validate 验证了架构,并获得了OK,映射是正确的。但是数据库架构不同步(我实际上是从一个空数据库开始...)
然后我运行bin/console doctrine:schema:update --force,得到以下错误:
SQLSTATE[22023]:无效参数值:7 错误:NUMERIC 小数位数 10 必须介于 0 和精度 2 之间
第 1 行:...ULL,application_id VARCHAR(255) NOT NULL,数量 NUMERIC(2,...
在ServiceFee 类中:
/**
* @ORM\Column(type="decimal", precision=2, scale=10)
*/
private $amount;
以及相关的SQL命令(用bin/console doctrine:schema:update --dump-sql检索):
CREATE TABLE service_fees (
id INT NOT NULL,
created TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL,
modified TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL,
uuid VARCHAR(255) NOT NULL,
organization_id VARCHAR(255) NOT NULL,
application_id VARCHAR(255) NOT NULL,
amount NUMERIC(2, 10) NOT NULL,
charged BOOLEAN NOT NULL,
payment_method_type VARCHAR(255) NOT NULL,
transaction_number VARCHAR(255) NOT NULL,
removed BOOLEAN NOT NULL,
PRIMARY KEY(id)
);
CREATE UNIQUE INDEX unique_uuid ON service_fees (uuid);
执行上述命令后,我开始收到一个新错误,但我不确定这是否是架构更新不完整的结果:
SQLSTATE[42703]:未定义列:7 错误:列“min_value”不存在
第 1 行:从“translations_id_seq”中选择 min_value、increment_by
【问题讨论】:
标签: php postgresql symfony doctrine-orm schema