Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Разделение SQL блоков в ORACLE


Alex' ©   (2006-10-17 16:08:00) 

Прогоняю текст процедуры и одновременно необходимо вставить запись в таблицу:
create or replace function MyName
.
.
.
end MyName;

insert into D_version (DATESCRIPT,step,num,description)
      values ('17.10.2006',1,5,'create or replace function MyName');

Как сделать что бы Oracle не загонял текст INSERT'a в тело процедуры?


Sergey13   (2006-10-18 08:40:00) [1]

> Все вносимые изменения хранятся в файлах под такимиже номерами
> и названиями

Это несколько меняет дело. 8-)


ANB   (2006-10-17 17:22:00) [2]


> А нормальный программный апдейтер еще не реализован. На
> оракл только перешли.

Вот потом и реализуете. А подход более менее нормальный. Главное, чтобы версия добавлялась только в случае успешного выполнения команды.


Alex'   (2006-10-17 17:17:00) [3]


> Вроде некоторые системы контроля версий работают и с SQL.
>  Наверное - это будет лучшим вариантом.Самое простое, ИМХО,
>  - коментарить весь старый текст процедуры с пояснениями
> "когда, кто и почему" и писать новый прямо в теле. Хоть
> наглядно будет. А так - что ты увидишь из своего лога? Что
> 17 кто-то сменил что-то? Не маловато-ли.

Нет, комментить неподойдет есть тела по 1400 строк.

Все вносимые изменения хранятся в файлах под такимиже номерами и названиями, что позволяет сделать выводы о сотоянии базы. А вся канитель вообще потому что поддерживаемых  около десятка. Разбросанных по стране.
А нормальный программный апдейтер еще не реализован. На оракл только перешли.


ANB   (2006-10-17 17:04:00) [4]


> Самое простое, ИМХО, - коментарить весь старый текст процедуры
> с пояснениями "когда, кто и почему" и писать новый прямо
> в теле.

После 350 версии там будет каша.

Кстати, подход, как подход. Бывает много хуже.


Sergey13   (2006-10-17 16:58:00) [5]

> Какой метод будет лучшим?

Вроде некоторые системы контроля версий работают и с SQL. Наверное - это будет лучшим вариантом.
Самое простое, ИМХО, - коментарить весь старый текст процедуры с пояснениями "когда, кто и почему" и писать новый прямо в теле. Хоть наглядно будет.
А так - что ты увидишь из своего лога? Что 17 кто-то сменил что-то? Не маловато-ли.


Alex'   (2006-10-17 16:43:00) [6]

Спасибо люди, работает.

> Честно говоря, странный метод работы с версиями.

Какой метод будет лучшим?


Sergey13   (2006-10-17 16:34:00) [7]

> [2] Alex'   (17.10.06 16:19)
> Вставлять запись одновременно
> с телом процедуры понадобилось для контроля версий процедур.
> Т.е. в таблице D_version хранится история изменений БД.

Честно говоря, странный метод работы с версиями.


Sergey13   (2006-10-17 16:29:00) [8]

> [2] Alex'   (17.10.06 16:19)
> Выполняю скрипт в консоли.

В Плюсе что ли? Тогда
> [3] ANB ©   (17.10.06 16:21)


ANB   (2006-10-17 16:21:00) [9]

/


Alex'   (2006-10-17 16:19:00) [10]

Выполняю скрипт в консоли. Вставлять запись одновременно с телом процедуры понадобилось для контроля версий процедур. Т.е. в таблице D_version хранится история изменений БД.


Sergey13   (2006-10-17 16:13:00) [11]

Что-то не больно понятно. Где и как "прогоняешь"? Зачем вдруг потребовалось вставлять запись?


Наверх

Титульная страница Поиск, карта сайта Написать письмо