Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Скрипт в IBExpert - COmmit??? / 7 сообщений из 7, страница 1 из 1
05.12.2005, 11:19
    #33416613
Borr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скрипт в IBExpert - COmmit???
В IBExpert пишу скрипт
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
CREATE PROCEDURE FININSERT (
    NNAME INTEGER,
    NDATEFIN DATE,
    NGLAVA INTEGER,
    NRAZDEL INTEGER,
    NCELSTAT INTEGER,
    NRASX INTEGER,
    NECONSTAT INTEGER,
    NNAZ INTEGER,
    NSUMFIN NUMERIC( 15 , 2 ),
    NNAPR INTEGER)
AS
DECLARE VARIABLE OLDSUM NUMERIC( 15 , 2 );
DECLARE VARIABLE OLDSUMPL NUMERIC( 15 , 2 );
begin
  SELECT SUM(Main.SUMFIN) FROM Main where
  Name=:NName AND Glava=:NGlava AND Razdel=:NRazdel AND CelStat=:NCelStat
  AND Rasx=:NRasx AND EconStat=:NEconStat
  group by Name,Glava,Razdel,CelStat,Rasx,EconStat into :OLDSUM;
  SELECT SUM(PLANFIN.SUMFIN) FROM PLANFIN
  WHERE Name=:NName AND Glava=:NGLAVA AND RAZDEL=:NRAZDEL AND CelStat=:NCelStat
  AND Rasx=:NRasx AND EconStat=:NEconStat
  group by PLANFIN.GLAVA, PLANFIN.RAZDEL INTO :OLDSUMPL;
  IF(:OLDSUM + :NSUMFIN <= :OLDSUMPL) THEN
   BEGIN
    INSERT INTO Main (Name,Datefin,Glava,razdel, celstat, rasx, econstat, naz, SumFin,Napr)
    VALUES (:nname,:ndatefin,:nglava,:nrazdel,:ncelstat,:nrasx,:neconstat,:nnaz,:nsumfin,:nnapr);
   END
  ELSE
    exception priv;
  suspend;
/*end^

SET TERM ; ^*/
END
COMMIT;/*Здесь ошибка*/
GRANT SELECT,INSERT ON MAIN TO PROCEDURE FININSERT;
COMMIT;
На Commit он мне вываливает
Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Token unknown - line 38, char 1.
COMMIT.
Как тогда обращаться с Commit??? Вообще не понятно
...
Рейтинг: 0 / 0
05.12.2005, 11:35
    #33416675
Dremuchij Forester
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скрипт в IBExpert - COmmit???
Точки с запятыми.
Их порой так не хватает... после эндов... перед коммитами...
...
Рейтинг: 0 / 0
05.12.2005, 11:36
    #33416677
Лентяй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скрипт в IBExpert - COmmit???
Borr
Как тогда обращаться с Commit??? Вообще не понятно
В документации почитай.
...
Рейтинг: 0 / 0
05.12.2005, 11:37
    #33416681
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скрипт в IBExpert - COmmit???
1. создание процедуры - это не совсем скрипт.
2. в процедурах и триггерах commit нельзя.
...
Рейтинг: 0 / 0
05.12.2005, 11:54
    #33416746
Borr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скрипт в IBExpert - COmmit???
Точка с запятой не помогают, а commit у меня не в ХП.
...
Рейтинг: 0 / 0
05.12.2005, 12:27
    #33416869
_spy_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скрипт в IBExpert - COmmit???
BorrТочка с запятой не помогают, а commit у меня не в ХП.

Абсолютно уверен? Может все-таки еще раз проверить?

CREATE PROCEDURE FININSERT (

..........................................
END ; -- <-- пропущено
COMMIT;/*Здесь ошибка*/
GRANT SELECT,INSERT ON MAIN TO PROCEDURE FININSERT;
COMMIT;
...
Рейтинг: 0 / 0
05.12.2005, 12:31
    #33416891
Borr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скрипт в IBExpert - COmmit???
Да дело в ; - спасибо
...
Рейтинг: 0 / 0
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Скрипт в IBExpert - COmmit??? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]