Я нахожусь в Postgres и имею две базы данных на одной машине, и я хотел бы переместить некоторые данные из базы данных Source в базу данных Dest.Перемещение информации между базами данных
Database Source:
Table User has a primary key
Table Comments has a primary key
Table UserComments is a join table with two foreign keys for User and Comments
Dest выглядит точно так же, как источник в структуре, но уже имеет информацию пользователей и Комментарии таблиц, которые необходимо сохранить.
Я думаю, что мне, вероятно, придется сделать это за несколько шагов.
Шаг 1, я бы сбросил источник в файл, используя команду Postgres Copy.
Шаг 2, В поле «Я» Я бы добавил временный столбец second_key как для пользователя, так и для комментариев и новую таблицу соединений SecondUserComments.
Шаг 3, я бы импортировал сбрасываемый файл в Dest using Copy еще раз, с введенными ключами в столбцы second_key.
Шаг 4: Я бы добавил строки в UserComments в Dest на основе содержимого SecondUserComments, используя только настоящие первичные ключи. Может ли это быть сделано с помощью команды SQL или мне нужен скрипт?
Шаг 5, удалите таблицу SecondUserComments и удалите столбцы second_key.
Это звучит как лучший способ сделать это, или есть лучший способ, с которым я не обращаю внимания?
Как я могу избежать изменения данных, учитывая, что я также пытаюсь импортировать таблицу соединений, которая соединяется с первичными ключами, мне нужно будет изменить? –