Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Как сервер нумеруют строки в хранимой процедуре? / 8 сообщений из 8, страница 1 из 1
28.11.2013, 10:43:55
    #38481243
Cobalt747
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сервер нумеруют строки в хранимой процедуре?
FB 2.1 x32, Win7 x64

Получаю ошибку
автор validation error for column ENTERPRISEID, value "*** null ***"
At procedure 'APPENDREMAINBYWAREID' line: 95, col: 5
однако в процедуре, если смотреть текст как он хранится в RDB$PROCEDURES (начиная с DECLARE VARIABLE)
с 90 по 100 строки такие:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
     IF ((NOT :IREMAIN IS NULL) AND (:IREMAIN <> 0)) THEN
      INSERT INTO REMAIND
        (ID, REMAINID, DELTA, DTYPE)
      VALUES
        (GEN_ID(GREMAIND, 1), :REMAINID, - :IREMAIN, 1);
  END --В таблице REMAIND нет поля ENTERPRISEID
  ELSE
  BEGIN
    IF (IADDREPLACE <> 1) THEN
    BEGIN
      SUMMR = 0;



А вот если считать первой строкой Begin (как показывает IBExpert)
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
    IF (IADDREPLACE <> 1) THEN
    BEGIN
      SUMMR = 0;
      SELECT SUM(DELTA)
      FROM REMAIND
      WHERE REMAINID = :REMAINID AND DTYPE = 1
      INTO SUMMR;

      IF (SUMMR <> 0) THEN
        INSERT INTO REMAIND(ID, REMAINID, DELTA, DTYPE)
        VALUES (GEN_ID(GREMAIND, 1), :REMAINID, -:SUMMR, 1);



Просветите - как же всё-таки сервер нумеруют строки в процедуре
...
Рейтинг: 0 / 0
28.11.2013, 10:48:46
    #38481257
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сервер нумеруют строки в хранимой процедуре?
Cobalt747начиная с DECLARE VARIABLE
С Create or alter
...
Рейтинг: 0 / 0
28.11.2013, 11:01:33
    #38481285
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сервер нумеруют строки в хранимой процедуре?
Cobalt747,

1. создать процедуру из 5 строк
2. вписать ошибочную строку
3. проверить соответствие номера строки при ошибке
...
Рейтинг: 0 / 0
28.11.2013, 12:57:50
    #38481606
Ivan_Pisarevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сервер нумеруют строки в хранимой процедуре?
Cobalt747первой строкой Begin (как показывает IBExpert)Не пользоваться "оглупляющим режимом" эксперта?
...
Рейтинг: 0 / 0
29.11.2013, 15:52:35
    #38483564
Cobalt747
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сервер нумеруют строки в хранимой процедуре?
wadmanCobalt747начиная с DECLARE VARIABLE
С Create or alter
Примерно так и получается, но!
+/- 2 строки.

Почему такая примерность?!
в ФБ что, генератор случайных числе применяют, что нет достоверного способа точно определить строку?
...
Рейтинг: 0 / 0
29.11.2013, 15:56:14
    #38483573
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сервер нумеруют строки в хранимой процедуре?
Cobalt747,

Код: sql
1.
2.
3.
4.
5.
6.
7.
 IF (A>B) OR
     (C<D) AND
     (E=F) 
 THEN
    UPDATE ()
 ELSE
    INSERT ();



Ну и на какой строке остановится бедному парсеру, который оперируем выражениями (statements)?
...
Рейтинг: 0 / 0
29.11.2013, 16:35:19
    #38483688
Cobalt747
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сервер нумеруют строки в хранимой процедуре?
DarkMasterНу и на какой строке остановится бедному парсеру, который оперируем выражениями (statements)?
вот и я хочу узнать - на какую строку сервер ругается?
Он же их как-то нумерует, по алгоритму некоему, я полагаю, а не от балды.
...
Рейтинг: 0 / 0
29.11.2013, 21:23:58
    #38484110
Ivan_Pisarevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сервер нумеруют строки в хранимой процедуре?
Cobalt747Почему такая примерность?!У меня сколько не замечал, всегда на первой строке стэйтмента. Обычным экспертом, никаких +- не замечал, номер в строки в эксепшене, потом смотрю эту строку ошибка именно там.
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Как сервер нумеруют строки в хранимой процедуре? / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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