Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.05;
Скачать: CL | DM;

Вниз

Значение генератора   Найти похожие ветки 

 
Назаров Евгений   (2002-11-14 19:27) [0]

Мужики, как в переменную Num:integer , записать значение генератора gReq как можно проще.
SQL знаю плохо, поэтому не знаю как вытащить значение
gen_id(gReq,0) не записывая его в другую таблицу


 
Val ©   (2002-11-14 19:36) [1]

select distinct gen_id(CUST_NO_GEN, 0) from RDB$GENERATORS;

Этот запрос возвращает значение генератора CUST_NO_GEN


 
Cranium ©   (2002-11-14 19:36) [2]

CREATE TRIGER NUMBE_H;
..................

Num=GEN_ID(NUMBE_H,1)


 
Val ©   (2002-11-14 19:39) [3]

предупрежу, запрос в моем предыдущем ответе, скопирован из доки первой попавшейся. лучше проверить.


 
Назаров Евгений   (2002-11-14 19:39) [4]

то есть запрос
select distinct gen_id(CUST_NO_GEN, 0) from RDB$GENERATORS;
возвращает таблицу с одим полем и одной записью ?, если не трудно, напишите пожалуйста как ее получить?


 
Назаров Евгений   (2002-11-14 19:42) [5]

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


 
Cranium ©   (2002-11-14 19:54) [6]

Примерно такая ХП
CREATE PROCEDURE RETURN_GEN
RETURN(OUT_ID INTEGER) AS
BEGIN
GEN_ID(NUMBE_H1)=:OUT_ID;
SUSPEND;
END


 
Назаров Евгений   (2002-11-14 20:27) [7]

получилось, спасибо, только вот понять не могу, почему ";" приходится ставить перед n1 и suspend, (подругому не работает) ,конечно может быть IBConsole глючит

CREATE PROCEDURE GetReq
RETURNS(n1 INTEGER)
AS
BEGIN
;n1=GEN_ID(gReq,0)
;SUSPEND;
END;


 
Val ©   (2002-11-14 20:54) [8]


> конечно может быть IBConsole глючит

нет, доку нужно почитать.


 
-=Sergeante=- ©   (2002-11-15 18:47) [9]


> Назаров Евгений (14.11.02 20:27)
> получилось, спасибо, только вот понять не могу, почему ";"
> приходится ставить перед n1 и suspend, (подругому не работает)
> ,конечно может быть IBConsole глючит

??? Может всё таки так:
CREATE PROCEDURE GetReq
RETURNS(n1 INTEGER)
AS
BEGIN
n1=GEN_ID(gReq,0);
SUSPEND;
END;



 
Назаров Евгений   (2002-11-15 19:26) [10]

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


 
Andriano ©   (2002-11-16 08:17) [11]

Двоеточие после END нельзя ставить. Не забывайте, что не на Delphi пишите.


 
Bmouradov   (2002-11-16 13:22) [12]

function GetNewId(qry: TIBQuery; Generator: string): integer;
begin
qry.Close;
qry.SQL[0] := "SELECT GEN_ID(" + Generator + ", 1) AS Id";
qry.Open;
try
Result := qry.Fields[0].AsInteger;
finally
qry.Close;
end;
end; //GetNewId



Страницы: 1 вся ветка

Текущий архив: 2002.12.05;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.014 c
1-14492
Daken
2002-11-26 07:15
2002.12.05
Помогите вытащить символ


1-14668
lionkiller
2002-11-25 17:14
2002.12.05
StringGrid


3-14416
Alexey Goosev
2002-11-16 13:26
2002.12.05
Предикат CONTAINING (ламерский вопос :)


1-14493
gary5555
2002-11-23 18:25
2002.12.05
ComboBox


6-14715
Hirara
2002-10-08 19:53
2002.12.05
Передача файлов