Вниз
Скачать: 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.015 c
7-62886
Sergei_tlt
2002-11-06 11:52
2003.01.20
Перемещение мыши


1-62602
Senator
2003-01-09 11:03
2003.01.20
TreeView


4-62912
TankMan
2002-12-01 22:32
2003.01.20
Освобождение ресурсов...


3-62408
VS2002
2002-12-26 08:20
2003.01.20
Работа с Data Module Designer


3-62358
J_S
2002-12-24 13:15
2003.01.20
dbExpress




   Наверх