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

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

Как в Firebird в хранимой процедуре обратиться к таблице по имени [IB6.x]


Пубертанец ©   (2004-01-28 09:54:00) 

Например, есть триггер, который в принципе одинаков для всех таблиц, но в его теле я бы хотел загнать в переменную имя таблицы, для которой выполняется этот триггер. Как это узнать? И как вообще узнать имя выполняющегося триггера?


Digitman   (2004-01-28 15:57:00) [1]


> Карелин Артем © (28.01.04 15:49) [12]


> имя процедуры


какой такой процедуры ? выяснилось же, что ни о каких пройедурах речи вовсе не идет ?


Карелин Артем   (2004-01-28 15:49:00) [2]

Идея: имя процедуры в триггере будет жестко зашито, но в нужный момент BLR нашей процедуры подменяется из BLR нужной :-)


Digitman   (2004-01-28 15:21:00) [3]


> tria © (28.01.04 14:33) [10]


речь идет, очевидно, об EXECUTE STATEMENT

она здесь, по реальной теме вопроса, действительно как телеге пятое колесо


> Пубертанец (28.01.04 14:01) [9]


т.е. проблема рассосалась сама собой ? вот и хорошо !


tria   (2004-01-28 14:33:00) [4]

Помоему, в Firebird 1.5 появилась запрашиваемая тобой возможность (см. тему, а не ее расшифровку, т.к. в теме задан один вопрос, а в тексте ниже ее - совершенно другой). Только синтаксиса я не помню, сам никогда не пользовал.


Пубертанец   (2004-01-28 14:01:00) [5]

Я признаю свою ошибку


Digitman   (2004-01-28 12:53:00) [6]


> Пубертанец (28.01.04 12:26) [6]


угу ... эт ты , значит, решил один и тот же генератор использовать для формирования уникальных значений (и их диапазонов) сразу нескольких таблиц ? А чем, какими устойчивыми соображениями продиктована такая вот блажь ?


Romkin   (2004-01-28 12:27:00) [7]

Оййй млииииин. А генераторы, думаешь, чиста для понтов придумали?


Пубертанец   (2004-01-28 12:26:00) [8]

Нет, просто хочу создать хранимую процедуру, которая бы вставляла ID каждой таблицы из определенного промежуткаю Например:

Таблица 1 - ID могут генерироваться в промежутке 1-500
Таблица 2 - ID могут генерироваться в промежутке 501-1000 и т.д.


Digitman   (2004-01-28 11:32:00) [9]

ты таким образом протоколировать обращения к таблицам намерен ? я правильно понял ?


Пубертанец   (2004-01-28 11:20:00) [10]

То, что триггеры как объекты разные - это понятно. Но мне просто каждый раз в тексте триггера надо писать имя таблицы, для которой он выполняется, а было бы намного легче - CTRL+C CTRL+V


Digitman   (2004-01-28 11:02:00) [11]

но если тебе интересны в принципе связи между теми или иными триггерами и соотв. им таблицами, то такая инф-ция имеется и доступна в сист.таблице RDB$TRIGGERS


Digitman   (2004-01-28 10:57:00) [12]


> Как в Firebird в хранимой процедуре


> Например, есть триггер


Нестыковочка получается. Триггер и SP - две разные разницы


> триггер, который в принципе одинаков для всех таблиц


это тексты триггеров одинаковы.
но триггеры-то сами как IB-объекты разные ! каждый из них жестко привязан только к одной таблице, операции над которой данный триггер отслеживает.


jack128   (2004-01-28 10:52:00) [13]

никак. тригер вешается на одну таблицу - соответственно в его теле ты абсолютно точно знаешь для какой таблицы этот тригер ;-)


Наверх

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