Инструменты разработчика Oracle для Visual Studio 2017 (ODT) - PullRequest
0 голосов
/ 29 августа 2018

Я создал Oracle Database Project Version 2 в Visual Studio 2017 и импортировал существующую базу данных в проект, чтобы получить схему базы данных для моего проекта, и я получил SQL-файл для такого объекта в моем проекте. Проблема в том, что когда я, например, изменяю таблицу и сохраняю изменения в своем проекте базы данных oracle и собираю его, я получаю сценарий создания в качестве вывода вместо сценария изменения, поэтому этот сценарий не может быть развернут в моей базе данных из-за "ошибка существующего объекта".

Я попытался сделать это иначе, перейдя к опции сравнения схемы:

  • Я запустил сравнение схем, упомянув мой проект базы данных Oracle в качестве источника и мою базу данных в качестве цели
  • Результат сравнения показал, что между источником и целью, которая была таблицей, есть не идентичный объект (потому что я добавил столбец в таблицу)

Опять же, проблема в том, что когда я генерирую скрипт обновления, он дает скрипт удаления / создания таблицы вместо изменения, и я не могу развернуть этот скрипт, потому что я потеряю данные.

У кого-нибудь есть идеи? как получить скрипт изменения, создав проект или запустив операцию сравнения схемы?

1 Ответ

0 голосов
/ 23 октября 2018

Я обнаружил, что сравнение двух баз данных создает «несколько» правильный скрипт diff (может потребоваться некоторая ручная настройка). Таким образом, вы можете запустить файл SQL, сгенерированный проектом базы данных, для другого экземпляра Oracle, а затем сравнить оба.

...