powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / PowerDesigner - очищает поле при изменении длины
10 сообщений из 10, страница 1 из 1
PowerDesigner - очищает поле при изменении длины
    #36046239
kassiop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте,
я новичек в PowerDesigner

1. сделал Reverse Engeneering базы (а) Аксесс, или б)СКЛ Сервер)
2. Уменьшил в таблице длину текстового поля
3. Делаю Modify DataBase - и в результате в этом столбце вообще нет данных
выдается сообщение "Insert orders will fail to restore data from temporary table"
Судя по скрипту эти данные и не переносятся в новую версию таблицы
Как поправить?
Вручную все время не хотелось бы.

Заранее спасибо за ответы.
...
Рейтинг: 0 / 0
PowerDesigner - очищает поле при изменении длины
    #36046730
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kassiop,
/topic/639680&pg=4#7227820
...
Рейтинг: 0 / 0
PowerDesigner - очищает поле при изменении длины
    #36046989
kassiop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Роман Дынникрекомендую не использовать обновление БД напрямую из PD, а использовать патчи, которые проверяются глазами и отчасти дописываются руками, а то что генерит PD при modify database можно использовать только как черновой вариант для патча. патчи складывайте куда нибудь в svn или vss или в том же PD в какие-нибудь artifacts.

хм, а для чего PowerDesigner тогда вообще нужен?

там в цитате дальше идет речь о апгрейде бекапов - это сложнее, согласен
а у меня элементарная операция
и даже скрипт получается совсем не такой как нужно - хотя СУБД это все умеют
...
Рейтинг: 0 / 0
PowerDesigner - очищает поле при изменении длины
    #36047048
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kassiop wrote at 17.06.2009 16:37:

> 2. Уменьшил в таблице длину текстового поля
> 3. Делаю Modify DataBase - и в результате в этом столбце вообще нет данных
> выдается сообщение "Insert orders will fail to restore data from
> temporary table"
> Судя по скрипту эти данные и не переносятся в новую версию таблицы

Вообще не переносятся или при переносе возникает ошибка? Можно сам скрипт посмотреть?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
PowerDesigner - очищает поле при изменении длины
    #36048326
kassiop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Denis Popov,

ну так в скрипте как раз эти поля уже отсутствуют на шаге уже инсерта из старой таблицы в новую - и в результате там налл.

ошибки нет - но и данных в укороченном столбце - тоже

а делать это прихолится не один 10 раз - так можно и коммандной строкой разрабатывать :)
...
Рейтинг: 0 / 0
PowerDesigner - очищает поле при изменении длины
    #36048333
kassiop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
добавлю - а собщение на английском - это ПауерДизайнер предупреждает об этом - и мессажБоксом и комментарием в тексте скрипта - что данные в столбце будут потеряны
...
Рейтинг: 0 / 0
PowerDesigner - очищает поле при изменении длины
    #36048356
kassiop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вот скрипт при изменении длині поля NAME_KVK с 256 на 128
может в шаблонах что-то подкрутить можно?


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
/*==============================================================*/
/* DBMS name:      Microsoft SQL Server 2005                    */
/* Created on:     18.06.2009 13:17:16                          */
/*==============================================================*/


if exists (select  1 
            from  sysobjects
           where  id = object_id('dbo.tmp_mdt_KVK')
            and   type = 'U')
   drop table dbo.tmp_mdt_KVK
go

execute sp_rename mdt_KVK, tmp_mdt_KVK
go

/*==============================================================*/
/* Table: mdt_KVK                                               */
/*==============================================================*/
create table dbo.mdt_KVK (
   ID_KVK               nvarchar( 3 )          collate SQL_Ukrainian_CP1251_CI_AS null,
   NAME_KVK             nvarchar( 128 )        collate SQL_Ukrainian_CP1251_CI_AS null
)
on "PRIMARY"
go

--WARNING: The following insert order will not restore columns: NAME_KVK
insert into dbo.mdt_KVK (ID_KVK)
select ID_KVK
from dbo.tmp_mdt_KVK
go
...
Рейтинг: 0 / 0
PowerDesigner - очищает поле при изменении длины
    #36048380
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kassiop wrote at 18.06.2009 15:09:

> ну так в скрипте как раз эти поля уже отсутствуют на шаге уже инсерта из
> старой таблицы в новую - и в результате там налл.
>
> ошибки нет - но и данных в укороченном столбце - тоже

Я думаю, что разработчики предположили возможность существования значений, которые не влезут в поле
после уменьшения его длины, а стало быть весь запрос может закончиться неудачно. А тут хотя бы
остальные данные вставятся. Если ты уверен, что такового не будет - доработай скрипт самостоятельно.

> а делать это приходится не один 10 раз - так можно и командной строкой
> разрабатывать :)


На мой взгляд, опция Modify Database позволяет автоматизировать простые операции, скрипты для
которых лень писАть руками, например, создание таблицы с нуля. Но даже их я бы сперва хотя бы
просматривал перед запуском, не говоря уж об остальном, когда порой в модели просто недостаточно
данных для формирования оптимального скрипта, как в твоем случае.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
PowerDesigner - очищает поле при изменении длины
    #36048424
kassiop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Denis Popov,
ну этот совет я понял что руками :)

хотя родными средствами это все выполняется без обнуления

ИМХО это скорее похоже на баг, недоработку и уж точно достойно опции в настройках

ИМХО, PowerDesigner: -10
...
Рейтинг: 0 / 0
PowerDesigner - очищает поле при изменении длины
    #36048512
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kassiop wrote at 18.06.2009 15:39:

> хотя родными средствами это все выполняется без обнуления
>
> ИМХО это скорее похоже на баг, недоработку и уж точно достойно опции в
> настройках
>
> ИМХО, PowerDesigner: -10


В PowerDesigner 15.0 такая же ситуация.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / PowerDesigner - очищает поле при изменении длины
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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