我有一個帶有 EF Core orm 的應用程式和 PostgreSQL 資料庫。有一個表Cars和Id列有一個序列,我可以在其中更改下一條記錄的當前值。現在我創建了一個新應用程式并將記錄從舊表移動到新資料庫中的新表。例如,第一條記錄的Id值為 =12000。新記錄從 1 開始,當它達到Id12000 的記錄時,我開始收到以下錯誤:
Npgsql.PostgresException (0x80004005): 23505: 重復鍵值違反唯一約束“PK_Cars”
在Id不再使用序列的新表列中,它具有標識型別,我無法更改 pgAdmin 中的當前值。如何讓我的列Id更改當前 id 值?
uj5u.com熱心網友回復:
首先,找出表中的實際最大值:
SELECT max(id) FROM tab;
max
════════
123000
(1 row)
然后,將基礎序列設定為更高的值:
ALTER TABLE tab ALTER id RESTART 200000;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/366095.html
標籤:数据库 PostgreSQL的 实体框架核心
上一篇:Django使用ubuntu用戶名連接資料庫而不是settings.py中的db用戶
下一篇:如何在選擇中填充一組id?
