PostgreSQL – Renaming Foreign Key After Table Rename

postgresql

I renamed a table, and apparently a foreignkey in it doesn't get changed, and causing problems,
Although when I \d error I get:
"error_test_id_fkey" FOREIGN KEY (test_id) REFERENCES test(id) ON DELETE CASCADE

Which the only relation to error name, is the name (weird)

Anyway – I have no problem deleting the foreignkey and recreating it, but I can't figure out how to do it

Best Answer

If you are using PostgreSQL 9.2 or newer, you can use RENAME CONSTRAINT:

ALTER TABLE name RENAME CONSTRAINT "error_test_id_fkey" TO "the_new_name_fkey";