![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Процедуры в InterBase [D7, IB4.x, IB5.x, IB6.x]
BorisMor © (2006-05-17 13:26:00)У меня в базе несколько справочных таблиц с одинаковыми палями (ID, data_value).
Хочу что бы можно написать внутреннею процедуры IИ в параметре у которого была возможность прописывать имя таблицы с которой она работает.
Типа:
CREATE PROCEDURE SPRAV_ADD (
NAME_TABLE VARCHAR (50),
VALUE_DAT VARCHAR (250))
AS
DECLARE VARIABLE id_no INTEGER;
BEGIN
/* Добавление данных в стправочник
NAME_TABLE - имя таблицы
VALUE_DAT - добавляемое значение */
select ID
from NAME_TABLE
where ("value_dat" like :value_dat)
into :id_no;
и т.д.
Это возможно ?
unknown (2006-05-17 13:35:00) [1]Еще можно сделать
if (NAME_TABLE='TABLE1') then
select ID
from table1
where ("value_dat" like :value_dat)
into :id_no; else
if (NAME_TABLE='TABLE2') then
select ID
from table2 и т.д.
unknown (2006-05-17 13:33:00) [2]Если используется не
> IB4.x, IB5.x, IB6.x
а FB 1.5.x и выше то можно извернуться с execute statement
Sergey13 (2006-05-17 13:32:00) [3]2BorisMor © (17.05.06 13:26)
>У меня в базе несколько справочных таблиц с одинаковыми палями (ID, data_value).
Как вариант.
Сделай одну (ID,тип_значения, data_value). Ну или 2 - в одной типы пропиши.
ANB (2006-05-17 13:28:00) [4]Нет. Придется писать дубли хранимок.