我使用 ALTER TABLE _ RENAME TO _
重命名了我的表:
ALTER TABLE foods RENAME TO food;
ALTER TABLE foods_nutrients RENAME TO food_nutrient;
虽然它起作用了,但是包含这些表名称的其他数据库对象(如索引、序列和约束)没有更新。所以我不得不手动更新它们,就像这样:
ALTER INDEX foods_pkey RENAME TO food_pkey;
ALTER SEQUENCE foods_id_seq RENAME TO food_id_seq;
ALTER TABLE food_nutrient RENAME CONSTRAINT foods_nutrients_food_id_fkey TO food_nutrient_food_id_fkey;
没有必要重新命名它们,但不这样做感觉不对。我想知道是否有自动执行此操作的命令。或者重命名包含旧表名称的所有对象不常见吗?