Created
July 27, 2019 17:32
-
-
Save jcharles22/69e00daf322551456cf270bf1ee687f0 to your computer and use it in GitHub Desktop.
update primary key to the greatest value
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- Login to psql and run the following | |
-- What is the result? | |
SELECT MAX(id) FROM your_table; | |
-- Then run... | |
-- This should be higher than the last result. | |
SELECT nextval('your_table_id_seq'); | |
-- If it's not higher... run this set the sequence last to your highest id. | |
-- (wise to run a quick pg_dump first...) | |
BEGIN; | |
-- protect against concurrent inserts while you update the counter | |
LOCK TABLE your_table IN EXCLUSIVE MODE; | |
-- Update the sequence | |
SELECT setval('your_table_id_seq', COALESCE((SELECT MAX(id)+1 FROM your_table), 1), false); | |
COMMIT; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment