Вниз
Скачать: CL | DM;

Добрый день уважаемые мастера, подскажите пожалуйста   Найти похожие ветки 

 
Леший ©   (2002-12-23 15:14) [0]

Вот пример на Oracle: CREATE OR REPLACE FUNCTION GetMaxNumber (MY_Date date )RETURN INTEGER IS. Как записать в функцию InterBase.


 
Alexandr ©   (2002-12-23 15:16) [1]

нихрена не понятно, чего ты хочешь.
И не забывай, что это РАЗНЫЕ СЕРВЕРА.
И логика у нихъ разная.
Тыб лучше подробненько написал про эту функцию: чего ты от нее хочешь


 
Леший ©   (2002-12-23 16:17) [2]

Мне нужно чтобы при внисении записи сканировалась дата по базе, и если есть записи с этой датой в колонку (напр. IND) проставлялся номер (если в меня есть сегодня уже три записи 1,2,3 то оно проставило номер 4, следующюю ставило 5 и т.д.) Номеровать начинало за каждую дату с 1.
На Оракле - это выглядит приблизительно так:
CREATE OR REPLACE FUNCTION GetMaxNumber (MY_Date date )
RETURN INTEGER IS

intNumber integer;

begin
SELECT MAX(IND)
INTO intNumber
FROM name_tabl
WHERE (MY_Date = MY_TABLE.DATE_)

RETURN nvl(intNumber, 0) + 1;

end;

Как будет в InterBase ?


 
Delirium^.Tremens ©   (2002-12-23 16:22) [3]


CREATE PROCEDURE GetMaxNumber (
MY_Date date
)
RETURNS(
intNumber integer
)
AS
begin
SELECT MAX(IND)
FROM name_tabl
WHERE (MY_Date = MY_TABLE.DATE_)
INTO :intNumber
intNumber = :intNumber + 1;
SUSPEND;
end;

Типа так?


 
Леший ©   (2002-12-23 17:26) [4]

Типа того, но ненравится intNumber = :intNumber + 1;, выдает ошибку: Token unknown - line 9, char 0intNumber. Что ему надо?


 
Alexandr ©   (2002-12-24 14:02) [5]

точки с запятой не хватает
INTO :intNumber;



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
14-62812
Cr@sh
2003-01-01 12:16
2003.01.20
У кого есть старые архивы форума???


1-62647
глупый
2003-01-07 21:21
2003.01.20
надпись на рабочем столе


1-62540
Shil
2003-01-10 21:48
2003.01.20
Освобождение памяти


14-62853
Top Gun
2002-12-26 21:35
2003.01.20
Partition Magic не конвертит в NTFS


3-62403
viper
2002-12-24 12:07
2003.01.20
DBGrid




   Наверх