Страница 1 из 1
Получение скриптов готовых объектов
Добавлено: 14 сен 2008, 20:11
Корвин
Помогите получить от существующей базы скрипт создания объекта как это позволяет IBExpert.
Например, в базе есть таблица KLIENT и вышеупомянутый IBExpert выводит:
Код: Выделить всё
CREATE TABLE KLIENT (
ID INTEGER NOT NULL,
NAME VARCHAR(50),
);
ALTER TABLE KLIENT ADD CONSTRAINT PK_KLIENT PRIMARY KEY (ID);
/* Trigger: KLIENT_BI0 */
CREATE TRIGGER KLIENT_BI0 FOR KLIENT
ACTIVE BEFORE INSERT POSITION 0
AS
begin
if (new.ID is NULL) then new.ID=GEN_ID(G_KLIENT, 1);
end
То же самое касательно тригеров, виевов, генераторов и процедур.
P.S.
Прошу прощения если неверно определил раздел для вопроса (это сложновато).
Re: Получение скриптов готовых объектов
Добавлено: 14 сен 2008, 23:11
kdv
http://www.ibase.ru/devinfo/ibx.htm#ibextract
нужно только учесть, что в этой части IBX поддерживает только InterBase. Но есть исходники IBX .
Re: Получение скриптов готовых объектов
Добавлено: 15 сен 2008, 21:27
dimitr
а чем isql -x не устраивает?
Re: Получение скриптов готовых объектов
Добавлено: 16 сен 2008, 09:14
Tonal
А им уже можно получить восстановимый скрипт базы?
Я когда последний раз пытался - не получилось. Пришлось назад на IBEScript откатываться.
Re: Получение скриптов готовых объектов
Добавлено: 16 сен 2008, 10:41
kdv
А им уже можно получить восстановимый скрипт базы?
Я когда последний раз пытался - не получилось.
не представляю, как можно из isql получить скрипт, который "невосстановим".
Re: Получение скриптов готовых объектов
Добавлено: 16 сен 2008, 12:00
dimitr
пример базы в студию. В смысле, в трекер

Re: Получение скриптов готовых объектов
Добавлено: 17 сен 2008, 12:38
Tonal
Как минимум, тогда наткнулся на вот это:
http://tracker.firebirdsql.org/browse/CORE-1394
http://tracker.firebirdsql.org/browse/CORE-915
Оповестил всех в рассылке и проголосовал.
Может ещё что-то было - не помню...
А вспомнил - для индексов с обратной сортировкой направление сортировки не указывалось - это поправили.

Re: Получение скриптов готовых объектов
Добавлено: 17 сен 2008, 14:34
WildSery
Уж про CORE-915 постеснялся бы упоминать

Да, недочёт, но до невосстановимости как-то с трудом...
Re: Получение скриптов готовых объектов
Добавлено: 17 сен 2008, 17:20
kdv
CORE-1394
за использование ссылок в доменах на любое кроме udf надо отлучать от программирования, принудительно.
Кстати, таким способом можно наплодить циклических ссылок элементарно. И как тогда isql должен выкручиваться?
create table пустую, а потом alter table add column ?
CORE-915 это вообще пипец. Была б моя воля, я бы удавил тех, кто считает команду CR эквивалентом CR+LF.
Сэкономили байт, юниксоиды. Теперь кушайте.
CR - это перевод каретки с конца строки в начало строки. Т.е. эквивалент нажатию кнопки Home.
LF - это перевод каретки на одну строку вниз, на той же позиции печати.
Поэтому переход в начало следующей строки - это только CR+LF и никак иначе.

Re: Получение скриптов готовых объектов
Добавлено: 18 сен 2008, 08:39
Tonal
Про CORE-1394 - тем не менее, проблема есть.
И либо сервер не должен допускать создание таких ссылок, либо утилиты должны правильно их разруливать.
CORE-915 - это явным образом недоработка утилиты.
Невосстановимость тут не появляется, а появляется некорректность восстановления из скрипта при использовании многострочных литералов.
Хорошо, что у меня это не используется.
Но у меня сейчас есть база, в которой исходники половины триггеров после isql -x имеют окончания строк CR+CR+LF.
А вот IBEScript или IBExpert генерят скрипт с неё совершенно нормально.
Короче isql -x оставляет после использования ощущение недоделанности.
