我想在迁移过程中重命名表,但前提是该表尚未重命名。我当前正在运行:
setFieldsValue({
companyCode: response.companyCode,
});
但是,如果ALTER TABLE IF EXISTS old_name RENAME TO new_name
已经存在,它将继续运行。只有在new_name
不存在的情况下,才可以运行此语句吗?
答案 0 :(得分:0)
您总是可以编写类似于以下内容的匿名代码块(或用户定义的函数/过程):
DO $$
BEGIN
IF NOT EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'z') THEN
EXECUTE 'ALTER TABLE a RENAME TO z';
END IF;
END$$;
据我所知,您不能直接使用ALTER TABLE命令指定它。