Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / PowerDesigner 15. Model Changes / 25 сообщений из 50, страница 1 из 2
17.03.2010, 18:01
    #36526921
Maymah
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Всем привет!
Перешел с 11 на 15 PD (ms sql server). При переходе просто запустил старый файл новым PD и он написал что перегенерил его на новую версию. Возникла проблема - раньше Modify Database делал из архивной модели, всё было нормально. В 15-й версии эту опцию заменили как я понял на Apply Model Changes to Database.
Вопрос такой - если раньше я дропал из таблицы столбец, 11-я версия писала скрипт типа alter table drop column, теперь же она переименовывает таблицу, создает новую и переливает туда данные, такой подход не годится. Как ни пытался играться с настройками модифая, ничего не помогло. Есть ли выход из сложившейся ситуации?

спасибо.
...
Рейтинг: 0 / 0
17.03.2010, 20:27
    #36527058
Vika Vinner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Maymahона переименовывает таблицу, создает новую и переливает туда данные, такой подход не годится. Как ни пытался играться с настройками модифая, ничего не помогло. Есть ли выход из сложившейся ситуации?
это совершенно правильный подход Коллега. Ничего делать не надо. Чем такой подход Вас не устраивает?
...
Рейтинг: 0 / 0
18.03.2010, 12:38
    #36528081
Denis Popov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Maymah
Вопрос такой - если раньше я дропал из таблицы столбец, 11-я версия писала скрипт типа alter table drop column, теперь же она переименовывает таблицу, создает новую и переливает туда данные, такой подход не годится. Как ни пытался играться с настройками модифая, ничего не помогло.
По крайней мере для Oracle у меня PowerDesigner удаляет поле без пересоздания таблицы. В первом диалоге "Apply Model Changes to Database" выбрана опция "Use alter statements when possible"?
...
Рейтинг: 0 / 0
18.03.2010, 12:42
    #36528096
Maymah
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Vika Vinnerэто совершенно правильный подход Коллега. Ничего делать не надо. Чем такой подход Вас не устраивает?

У меня продакшен база, в которой есть таблица с 100млн записей. Надо дропнуть 1 столбец, alter table сделает это за 1 секунду, а подход предлагаемый PD будет делать это пару часов, и для этого придется стопнуть продакшен. Если писать скрипт руками, то зачем мне вообще PD?

Вопрос остается в силе.
...
Рейтинг: 0 / 0
18.03.2010, 12:43
    #36528100
Maymah
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Denis Popov
По крайней мере для Oracle у меня PowerDesigner удаляет поле без пересоздания таблицы. В первом диалоге "Apply Model Changes to Database" выбрана опция "Use alter statements when possible"?

Да, эта опция стоит по дефолту. 11PD тоже удаляет поле, а вот 15-й хочет пересоздавать таблицу.
...
Рейтинг: 0 / 0
18.03.2010, 12:49
    #36528123
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Maymah wrote:

> Перешел с 11 на 15 PD (ms sql server). При переходе просто запустил
> не помогло. Есть ли выход из сложившейся ситуации?

Просто видимо PD этого ещё не умеет. Надо ждать следующую версию ...
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
18.03.2010, 12:56
    #36528159
Denis Popov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
MaymahДа, эта опция стоит по дефолту. 11PD тоже удаляет поле, а вот 15-й хочет пересоздавать таблицу.
Может ли это зависеть от способа подключения - ODBC, Connection profile?
...
Рейтинг: 0 / 0
18.03.2010, 13:13
    #36528245
Maymah
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
MasterZiv
Maymah wrote:

> Перешел с 11 на 15 PD (ms sql server). При переходе просто запустил
> не помогло. Есть ли выход из сложившейся ситуации?

Просто видимо PD этого ещё не умеет. Надо ждать следующую версию ...


то есть 11-й умел а 15-й разучился? не может такого быть.


Denis PopovMaymahДа, эта опция стоит по дефолту. 11PD тоже удаляет поле, а вот 15-й хочет пересоздавать таблицу.
Может ли это зависеть от способа подключения - ODBC, Connection profile?

Не использую подключения к бд, PD у меня является хранилищем метаданных, не более. Использую его для создания скриптов, которые накатываются на базу.
...
Рейтинг: 0 / 0
18.03.2010, 13:50
    #36528388
Denis Popov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
On 18.03.2010 13:13, Maymah wrote:

> Не использую подключения к бд, PD у меня является хранилищем метаданных, не более. Использую его для создания скриптов,
> которые накатываются на базу.

Но для того, чтобы сравнить модель с базой, ты куда-то подключаешься? Хотя странно, для MsSql у меня сравнение одной
модели с архивной удаляет поле без пересоздания.

В свойствах DBMS по пути Script\Objects\Column\Drop присутствует команда на удаление?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
18.03.2010, 14:18
    #36528493
Maymah
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Denis Popov
On 18.03.2010 13:13, Maymah wrote:

> Не использую подключения к бд, PD у меня является хранилищем метаданных, не более. Использую его для создания скриптов,
> которые накатываются на базу.

Но для того, чтобы сравнить модель с базой, ты куда-то подключаешься? Хотя странно, для MsSql у меня сравнение одной
модели с архивной удаляет поле без пересоздания.

В свойствах DBMS по пути Script\Objects\Column\Drop присутствует команда на удаление?


Сравниваю с архивной релизной моделью.

Скрипт есть - alter table [%QUALIFIER%]%TABLE%
drop column %COLUMN%. Помимо дропа столбца ещё должен дропнуться дефолт констрейнт на это поле, но в DropColnChck тоже всё ок прописано - alter table [%QUALIFIER%]%TABLE%
drop constraint %CONSTNAME%

может ещё есть мысли?
...
Рейтинг: 0 / 0
18.03.2010, 14:25
    #36528513
Denis Popov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
On 18.03.2010 14:18, Maymah wrote:

> может ещё есть мысли?

Разве что в точной версии PowerDesigner'а, у меня 15.1.0.2946 EBF8.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
18.03.2010, 14:32
    #36528535
Maymah
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Denis Popov
On 18.03.2010 14:18, Maymah wrote:

> может ещё есть мысли?

Разве что в точной версии PowerDesigner'а, у меня 15.1.0.2946 EBF8.


у меня 15.0.0.2613. Не нашел ни одного патча для PD. Он не патчатся? Как можно более новую версию получить?
...
Рейтинг: 0 / 0
18.03.2010, 15:21
    #36528720
Denis Popov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
On 18.03.2010 14:32, Maymah wrote:

> у меня 15.0.0.2613. Не нашел ни одного патча для PD. Он не патчатся? Как можно более новую версию получить?

Есть пачи и для 15.0, и для 15.1:

http://downloads.sybase.com/swd/summary.do?client=support&baseprod=30
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
18.03.2010, 15:37
    #36528812
Maymah
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Denis Popov
On 18.03.2010 14:32, Maymah wrote:

> у меня 15.0.0.2613. Не нашел ни одного патча для PD. Он не патчатся? Как можно более новую версию получить?

Есть пачи и для 15.0, и для 15.1:

http://downloads.sybase.com/swd/summary.do?client=support&baseprod=30


спасибо за ссылку. поставил самый последний патч, проблема не исчезла. Видимо, придется отказаться от PD в пользу ErWin.
...
Рейтинг: 0 / 0
18.03.2010, 15:58
    #36528900
Denis Popov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Ты случайно не пытаешься удалить поле, у которое есть DEFAULT-значение?
...
Рейтинг: 0 / 0
18.03.2010, 16:17
    #36528962
Maymah
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Denis PopovТы случайно не пытаешься удалить поле, у которое есть DEFAULT-значение?

именно это и делаю, писал об этом выше.
...
Рейтинг: 0 / 0
18.03.2010, 17:13
    #36529157
Denis Popov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
On 18.03.2010 16:17, Maymah wrote:

> именно это и делаю, писал об этом выше.

Я имею в виду именно наличие DEFAULT'а. Похоже, PowerDesigner поумнел, но не до конца: теперь он знает, что попытка
удаления поля через "alter table .. drop column .." закончится неудачно при наличии на поле DEFAULT'а, поэтому в этой
ситуации идет через пересоздание таблицы. Но еще не научился удалять DEFAULT перед удалением поля. При отстутствии
значения по умолчанию удаление поля идет без пересоздания таблицы.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
18.03.2010, 17:16
    #36529166
Vika Vinner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
MaymahDenis PopovТы случайно не пытаешься удалить поле, у которое есть DEFAULT-значение?

именно это и делаю, писал об этом выше.

Коллега, я ещё раз повторюсь - этот подход правильный хоть и не самый удачный. Если хотите сделать по-своему - напишите скрипт, запустите его а потом просинхронизируйте с моделью. Учить ПД делать что то неправильно мы не будем...
...
Рейтинг: 0 / 0
18.03.2010, 17:19
    #36529177
Vika Vinner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Denis Popov. Похоже, PowerDesigner поумнел, но не до конца:

Всё гораздо проще Коллега... Этот же скрипт создаст сам Microsoft на ту же задачу с данными. Если данных не будет - он поставит просто ALTER TABLE
...
Рейтинг: 0 / 0
19.03.2010, 09:52
    #36530104
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Vika Vinner wrote:

> Коллега, я ещё раз повторюсь - этот подход правильный хоть и не самый
> удачный.

Что в нём правильного -- не понятно. Таких правильных способов дофига.


Если хотите сделать по-своему - напишите скрипт, запустите его
> а потом просинхронизируйте с моделью.

Ага, зачем тогда PD вообще ?


Учить ПД делать что то неправильно
> мы не будем...

что неправильного в использовании гарантированного данной реализацией
DDL -я ?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
19.03.2010, 14:12
    #36530938
Vika Vinner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
MasterZivАга, зачем тогда PD вообще ?

PD ну совсем не генератор скриптов, уж простите коллега... А зачем он нужен... - Картинки красивые рисует
...
Рейтинг: 0 / 0
19.03.2010, 14:14
    #36530956
Vika Vinner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
MasterZiv
Что в нём правильного -- не понятно. Таких правильных способов дофига.

Гарант целостности данных на всем промежутке изменения объекта.
...
Рейтинг: 0 / 0
19.03.2010, 15:29
    #36531212
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
Vika Vinner wrote:
> Гарант целостности данных на всем промежутке изменения объекта.

Ага, а ALTER TABLE тебе не гарант целостности даных ?
Ну-ну.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
19.03.2010, 16:35
    #36531448
Vika Vinner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
MasterZivАга, а ALTER TABLE тебе не гарант целостности даных ?
Ну-ну.

ALTER TABLE - гарант целостности метадаты, а не объекта в целом. А что будет с датой - остается только гадать...
Хорошие администраторы знают что лучше данные скопировать в безопасное место прежде чем менять структуру базы. Что и делает скрипт если внимательно посмотреть. Данные копируются "в сторону" в готовом формате - сама структура базы не меняется до последнего момента. Когда делается
DROP TABLE + переименование скопированного объекта... Я не вижу предмета для обсуждения... Новый подход намного безопаснее и правильнее в эксплуатационном режиме. В Режиме разработки он и не используется...
...
Рейтинг: 0 / 0
19.03.2010, 16:45
    #36531479
Vika Vinner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerDesigner 15. Model Changes
MaymahУ меня продакшен база, в которой есть таблица с 100млн записей. Надо дропнуть 1 столбец, alter table сделает это за 1 секунду, а подход предлагаемый PD будет делать это пару часов, и для этого придется стопнуть продакшен. .

Коллега - А вы на рабочей базе (без остановки) за секунду сколько наделаете делов в 100 млн записях - не считали? Само копирование данных в предлагаемом скрипте не устанавливает лок на базу, если внимательно посмотрите. До момента полного переноса всех данных ваш исходный объект находится в рабочем состоянии, а новый никто не видит. Потом происходит DROP TABLE - старая табличка исчезает - и значит никаких действий с ней быть не может. Потом переименовывается копия - и данные сохранены и объект на месте... Что здесь - в этом подходе - плохого ... никак не могу понять... Уж простите мою "женскую логику" ..
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / PowerDesigner 15. Model Changes / 25 сообщений из 50, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]