Подготовка к избавлению от базы данных MySQL и переход на Oracle SQL. Я использую Oracle SQL Developer. Необходимо получить записи из таблицы MySQL и заполнить соответствующую таблицу в SQL.
Я смог установить соединение базы данных в SQL Developer с базой данных MySQL. Я проверил соединение, выполнив простой SELECT * из таблицы, чтобы убедиться, что он вернул все записи.
Однако в новой таблице Oracle SQL имеется довольно много изменений: имена в таблице MySQL имеют префикс "tn", то есть tnStore, tnConfigDate и т.д. Таблица SQL избавляется от этого префикса. Это вопрос №1.
В новой таблице также будет несколько новых столбцов. Эти данные будут добавлены позже из других источников. И данные не будут в том же порядке, что и таблица MySQL.
Как написать инструкцию SELECT INTO в SQL Developer для заполнения таблицы SQL данными из таблицы MySQL и сопоставить соответствующие столбцы, оставив теперь новые поля пустыми?
Рассмотрите возможность переноса существующих таблиц MySQL как прямо в Oracle с помощью SQL Developer. Затем перемещайте/рефакторируйте данные вокруг в свои новые таблицы с необходимыми определениями столбцов, используя INSERT как SELECT.
Может быть значительно быстрее, плюс после того, как будут получены "сырые" данные, вы можете делать свою работу снова и снова, пока не получите ее в самый раз.
Обратите внимание, что вы также можете просто перетащить и перетащить, чтобы переместить таблицу MySQL из этого соединения с существующим соединением базы данных Oracle, чтобы переместить таблицу (DDL, Data или Both).
Вот путь программирования, но не уверен, как сделать это в одном запросе:
Я надеюсь, что нам нужно использовать таблицы словаря данных в oracle all_tab_columns
и я не уверен в Mysql (например, подобную таблицу)
SELECT INTO
и пустой для новых полей, возможно, в цикле.
INSERT INTO TINTER_MASTER (STORENBR, MODELNBR, SERIALNBR, ORIGINITDATE, LASTCONFIGDATE, LASTPURGEDATE, CLRNTSYSID, PCMODEL, PCSERIALNBR, PCMACID,PCINITDATE) SELECT TNSTORE, TNMODEL, TNSERIALNBR, TNORIGINITDATE, TNINITDATE, TNLASTNETWORKDATE, TNCLRNTSYS, TNPCMODEL, TNPCSERIALNBR, TNPCMACID, TNPCINITDATE FROM TINTERSX;
Но могу ли я написать это заявление, чтобы сделать INSERT из MySQL Server в таблицу на сервере Oracle?