当前位置: 首页 > news >正文

PostgreSQL 一键批量修复所有表序列值

在navcat 等工具控制台执行下面命令

DO$$DECLARE tbl_name TEXT;seq_name TEXT;max_id BIGINT;BEGIN -- 遍历 public 模式下的所有用户表 FOR tbl_name IN SELECT tablename FROM pg_tables WHERE schemaname='public'AND tablename NOT LIKE'pg_%'LOOP seq_name :=tbl_name||'_seq';BEGIN --1. 获取表中id的最大值,若表为空则为0EXECUTE format('SELECT COALESCE(MAX(id), 0) FROM %I', tbl_name)INTO max_id;--2. 直接修复序列值 -- setval(seq, val,true)表示序列当前值为 val,下次 nextval()返回 val +1EXECUTE format('SELECT setval(%L, %s, true)', seq_name, max_id);RAISE NOTICE'已修复序列: % (下一值: %)', seq_name, max_id +1;EXCEPTION WHEN OTHERS THEN -- 忽略没有id列或序列不存在的表,继续处理下一个 RAISE WARNING'跳过表 %: %', tbl_name, SQLERRM;END;END LOOP;END$$;

http://www.gsyq.cn/news/1590999.html

相关文章:

  • Mac NTFS读写终极解决方案:Free-NTFS-for-Mac免费完整指南
  • Selenium自动化测试:从元素定位到健壮交互的完整指南
  • 傅里叶级数收敛性反例:二进尖峰块与拉库纳序列构造解析
  • GAT注意力权重可视化实战:从公式到热力图
  • 低代码开发你会用吗?
  • 035、LLVM Dialect:与LLVM IR的桥梁
  • 分享股票方面的API
  • OpenClaw+Kimi本地智能体工作流:多模态动作闭环实战指南
  • 【Three.js 实战】结合 MediaPipe 实现 3D 粒子手势互动特效 (附原理解析)--手势控制粒子项目,附源码
  • Claude 怎么用?网页端、API、第三方工具有什么区别
  • 数据库统计信息备份与还原技术实践
  • 深入拆解Agent核心:系统提示词与用户提示词的本质区别、工程落地与全场景避坑指南
  • 2026年深圳AI定制服务商观察:案例复用能力为何越来越重要?
  • 其实APP宣传成本最低的方式是:电子海报---POP广告
  • 四叉树原理与实现:优化空间查询与碰撞检测的利器
  • 100 00 黄大年茶思屋“难题揭榜”第100期-华为云难题第五期(全文整理)
  • 2026年API中转站实测横评榜单发布:非线智能API是企业首选AI中转服务商
  • TAI 134合规实操指南:模型扩散管控与API服务落地七项检查
  • 代理IP接入程序的完整流程(Python 实战,附排坑记录)
  • 5G站点1588同步故障导致板卡心跳失败及数据丢失的处置案例
  • DevOps Bash Tools:运维脚本合集,开箱即用
  • 多任务处理:后台运行与进程间通信(IPC)(87)
  • 第24期 | AI辅助调试与代码审查
  • 51单片机简易超市无人自动售货机售卖机165-1(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_可以扫码
  • Apache Struts XWork XXE漏洞深度剖析:原理、复现与修复
  • ChatGPT 官网访问异常怎么办?先看任务替代方案
  • 一朵集团云的微隔离规模化落地突围记!
  • 机械数据分析与可视化系统
  • Winlator终极指南:如何在Android设备上完美运行Windows应用与游戏
  • 挑选靠谱花坛公司有门道,这份实用指南助你做出合适选择