powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Опять меня глючит и колбасит или весна на улице?
4 сообщений из 4, страница 1 из 1
Опять меня глючит и колбасит или весна на улице?
    #33593359
Фотография Александр Гoлдун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASA 9.0.2.3267
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
CREATE PROCEDURE "dba".WhereIsError( in DocID integer)
BEGIN
  declare local temporary table tItems(
    line_id integer,
    reserved numeric( 12 , 5 )
  ) ON COMMIT PRESERVE ROWS;

  declare local temporary table t2(
    line_id integer,
    reserved numeric( 12 , 5 )
  ) ON COMMIT PRESERVE ROWS;


    INSERT INTO tItems
    (line_id, reserved)
    SELECT line_id, reserved2=coalesce(reserved, 0 )
    FROM t2
    WHERE DocID=DocId;
END
Какой результат выполнения это скрипта на любой базе, хоть asademo?
...
Рейтинг: 0 / 0
Опять меня глючит и колбасит или весна на улице?
    #33593889
iLLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ошибка около temporary в 3-й строке. Это возвращает сервер.
Если стереть это: "reserved2=", то все ОК. Я всегда не любил, и никогда не
использовал оператор присвоения/сравнения в селектах. Видимо тут все
прозрачно, АСА пытается сравнить поле "reserved2" и результат ф-ии
coalesce(reserved,0), и вот тут он понимает, что reserved2 брать-то негде?!
Или я не догнал вопроса?


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Опять меня глючит и колбасит или весна на улице?
    #33593932
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iLLerОшибка около temporary в 3-й строке. Это возвращает сервер.
Если стереть это: "reserved2=", то все ОК.
Все верно. Смешение диалектов.
Присваивание внутри селекта это особенность TransactSQL. А команда declare local temporary table это WatcomSQL. Вместе, в одной процедуре они быть не могут по определению.

А вот почему парсер ругается на temporary а не на присваивание - это вопрос очень даже интересный и загадочный :)
...
Рейтинг: 0 / 0
Опять меня глючит и колбасит или весна на улице?
    #33593970
Фотография Александр Гoлдун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl пишет:

> А вот почему парсер ругается на temporary а не на присваивание - это
> вопрос очень даже интересный и загадочный :)

А мне не до смайликов. Второй день подряд как дурак ищу у себя ошибки и
вот уже вторую нашел в ASA, хотя от первой там до сих пор еще пытаются
отнекиваться в стиле "ниче не знаю. сам дурак. с нашего конца пули вылетают"

А этот вопрос про ошибки парсера оказывается уже поднимался в 2000 году
в sybase.public.sqlanywhere.product_futures_discussion.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Опять меня глючит и колбасит или весна на улице?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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