gpt4 book ai didi

PostgreSQL 数组插入大小限制错误

转载 作者:行者123 更新时间:2023-11-29 12:44:06 24 4
gpt4 key购买 nike

我收到以下 Postgres 错误:

ERROR: value too long for type character varying(1024)

违规声明是:

INSERT INTO integer_array_sensor_data (sensor_id, "time", status, "value") 
VALUES (113, 86651204, 0, '{7302225, 7302161, 7302593, 730211,
... <total of 500 values>... 7301799, 7301896}');

表格:

CREATE TABLE integer_array_sensor_data (
id SERIAL PRIMARY KEY,
sensor_id INTEGER NOT NULL,
"time" INTEGER NOT NULL,
status INTEGER NOT NULL,
"value" INTEGER[] NOT NULL,
server_time TIMESTAMP WITHOUT TIME ZONE NOT NULL DEFAULT NOW()
);

研究 PostgreSQL 文档没有提及任何关于数组大小限制的内容。

知道如何解决这个问题吗?

最佳答案

问题不是来自 Array 本身,而是来自 Varchar String 在您的 Insert 中声明数组值。某些驱动程序将字符串文字键入 varchar(1024) 导致了该问题。

代替

'{1,2,3}'

尝试使用

ARRAY[1,2,3]

否则您可以尝试将字符串类型声明为TEXT(无限制)

'{1,2,3}'::text

关于PostgreSQL 数组插入大小限制错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34303075/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com