Postgresql 数据库 自增字段,Vastbase 无效的问题

本地开发使用Postgresql 数据库,设置字段 SortId 为整型,Type 为IENTITY, BY DEFAULT,

通过EF Core插入数据时,本地测试通过,在vastbase数据库中报错, SortId为空的问题。

通过检索发现,是vastbase 数据库与postgresql 处理自增逻辑不同,(应该是vastbase 用的数据库太老吧)

AI建议 不要再使用 Identity。

直接改成 Sequence

通过如下脚本实现:

sql 复制代码
CREATE SEQUENCE "PictureMarker_SortId_seq";

ALTER TABLE "PictureMarker"
ALTER COLUMN "SortId"
SET DEFAULT nextval('"PictureMarker_SortId_seq"');

再执行

sql 复制代码
SELECT setval(
    '"PictureMarker_SortId_seq"',
    COALESCE((SELECT MAX("SortId") FROM "PictureMarker"),0)
);

验证:

sql 复制代码
SELECT column_default
FROM information_schema.columns
WHERE table_name='PictureMarker'
AND column_name='SortId';

应输出

nextval(...) 之类的

此时,可以不修改后端代码,修复当前问题

相关推荐
这个DBA有点耶7 小时前
从症状到根因:数据库监控指标的分层方法与静态/动态阈值策略
数据库·mysql·代码规范
SelectDB7 小时前
时间旅行与快照能力速查:Doris 侧三条落地路径
大数据·数据库·数据分析
SelectDB7 小时前
云数仓成本结构拆解速查:五层计费 vs Doris / 托管形态
大数据·数据库·数据分析
SelectDB7 小时前
什么场景能承接与建议保留:Doris vs Snowflake 边界速查
大数据·数据库·数据分析
这个DBA有点耶9 小时前
DELETE没删多少数据,表却越来越大——InnoDB删除空洞与页合并失效的根因
数据库·mysql·代码规范
ly768913 小时前
PostgreSQL 备份恢复策略:pg_basebackup、WAL 归档与 PITR 在企业 Java 系统中的落地
java·数据库·postgresql·pitr·pg_basebackup·wal 归档
小羊没烦恼!13 小时前
Ajax与JSON的一些总结
android·java·前端·数据库·mysql·算法·okhttp
注塑机数据采集联网13 小时前
如何解决注塑机数据采集联网对接MES系统数据WiFi传输数据不稳问题
大数据·数据库·物联网·数据挖掘·数据分析
黄俊懿13 小时前
【架构师从入门到进阶】第六章:服务集群优化——第八节:线程数公式
java·服务器·数据库·分布式·性能优化·架构·系统架构