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

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

Добрый день уважаемые мастера, подскажите пожалуйста [D6, IB6.x]


Леший ©   (2002-12-23 15:14:00) 

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


Alexandr   (2002-12-24 14:02:00) [1]

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


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

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


Delirium^.Tremens   (2002-12-23 16:22:00) [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 16:17:00) [4]

Мне нужно чтобы при внисении записи сканировалась дата по базе, и если есть записи с этой датой в колонку (напр. 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 ?


Alexandr   (2002-12-23 15:16:00) [5]

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


Наверх

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