powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Оператор SELECT
17 сообщений из 17, страница 1 из 1
Оператор SELECT
    #39338989
Soo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Soo
Гость
День добрый!
В коде АСУП в ASA 9 я часто встречаю подобные выражения:

Код: sql
1.
select @a=null, @b=null;



ASA 17 подобный код не обрабатывает. Подскажите пожалуйста, что означают эти выражения и как мне перевести их в процедурах для ASA 17?
...
Рейтинг: 0 / 0
Оператор SELECT
    #39339035
Teck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
SET @A = NULL
...
Рейтинг: 0 / 0
Оператор SELECT
    #39339516
Soo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Soo
Гость
White Owl|| - текстовая конкатенация.
set @var - то, за что нужно бить больно по рукам. set - команда WatcomSQL, @ - необходимый символ для переменных из TransactSQL и опциональный для WatcomSQL. Точка с запятой в конце строки тоже из WatcomSQL.


Цитата из другой темы. Это на каком диалекте в итоге?
...
Рейтинг: 0 / 0
Оператор SELECT
    #39339587
Sergey Orlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Soo,
Все правильно, просто разные версии ASA поддерживает оба диалекта по разному, причем смешивание диалектов возможно в одних, причем тоже по разному, в других нет, в вашем случае вместо
Код: sql
1.
select @a=null, @b=null;


надо использовать
Код: sql
1.
2.
3.
 set a=null;
 set b=null;
 select a,b;


перед этим не забыть проверить наличие декларирования a,b ...
...
Рейтинг: 0 / 0
Оператор SELECT
    #39339591
Soo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Soo
Гость
А что в итоге будет выполнено в результате этой операции?
Sergey Orlov
Код: sql
1.
2.
3.
 set a=null;
 set b=null;
 select a,b;



Мне вообще непонятна запись
Код: sql
1.
select a,b; 

без FROM и т.п.
...
Рейтинг: 0 / 0
Оператор SELECT
    #39339676
Sergey Orlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SooА что в итоге будет выполнено в результате этой операции?
Sergey Orlov
Код: sql
1.
2.
3.
 set a=null;
 set b=null;
 select a,b;



Мне вообще непонятна запись
Код: sql
1.
select a,b; 

без FROM и т.п.
Будет выдана одна строка, где в первом столбце будет значение a, а во втором b, первый столбец будет именоваться a, а второй b, в этом конкретном случае будет выдано NULL NULL.
В вашем случае, в теле процедуры очевидно идет инициализация переменных a и b, поэтому select может быть и не нужен...
...
Рейтинг: 0 / 0
Оператор SELECT
    #39339710
pand
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SooА что в итоге будет выполнено в результате этой операции?
Sergey Orlov
Код: sql
1.
2.
3.
 set a=null;
 set b=null;
 select a,b;



Мне вообще непонятна запись
Код: sql
1.
select a,b; 

без FROM и т.п.

В этом случае
select a,b; не нужен
для Transact SQL

select @a = null ,@b= null

для Watcom SQL

set @a=null;
set @b=null;


@ лучше оставить чтобы последующий код не покрешился
...
Рейтинг: 0 / 0
Оператор SELECT
    #39343504
Soo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Soo
Гость
Подскажите плз, как ретранслировать тогда эту строку:
Код: sql
1.
2.
select @table_dep = table_dep, @sql_script = sql_script, @is_quoted = is_quoted 
            from #tmp_filter where param_name = @param;
...
Рейтинг: 0 / 0
Оператор SELECT
    #39343747
Sergey Orlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Soo,
А это у вас в процедуре или в чем-то другом...
...
Рейтинг: 0 / 0
Оператор SELECT
    #39343821
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SooПодскажите плз, как ретранслировать тогда эту строку:
Код: sql
1.
2.
select @table_dep = table_dep, @sql_script = sql_script, @is_quoted = is_quoted 
            from #tmp_filter where param_name = @param;


Ну зачем ты полез в сервер, если на такой элементарщине спотыкаешься?
Код: sql
1.
2.
3.
4.
select table_dep, sql_script, is_quoted 
  into @table_dep, @sql_script, @is_quoted
  from #tmp_filter 
 where param_name = @param;
...
Рейтинг: 0 / 0
Оператор SELECT
    #39343979
Soo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Soo
Гость
Dim2000Ну зачем ты полез в сервер, если на такой элементарщине спотыкаешься?

Вообще, это не я, это сам сервер спотыкается... Спасибо за ответ, я начинаю понимать структуру select ... into, это пока самое сложное.
...
Рейтинг: 0 / 0
Оператор SELECT
    #39343981
Soo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Soo
Гость
Sergey OrlovSoo,
А это у вас в процедуре или в чем-то другом...
Да, у меня тут база, которую я переношу из ASA 9 в ASA 17, где содержится порядка 850 процедур и функций, сервер выдаёт ошибки на эти селекты. В будущем, возможно, перейдём на другую БД, а сейчас это поддерживать приходится.
...
Рейтинг: 0 / 0
Оператор SELECT
    #39343987
Soo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Soo
Гость
На всякий случай подытожу. Получается, можно не менять конструкции типа
Код: sql
1.
select @a=null, @b=null;


на конструкции типа
Код: sql
1.
set a=null; set @b=null;


Их можно заменить на
Код: sql
1.
select null, null into @a, @b;


Правильно?
...
Рейтинг: 0 / 0
Оператор SELECT
    #39344185
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SooСпасибо за ответ, я начинаю понимать структуру select ... into, это пока самое сложное.
Я этот ответ написал, не включая мозг, где тут сложности-то ;)?

SooИх можно заменить на
Код: sql
1.
select null, null into @a, @b;


Правильно?
В общем, работать будет. Но выглядит весьма странно, примерно как вырезанные через зад гланды :).
...
Рейтинг: 0 / 0
Оператор SELECT
    #39344561
Soo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Soo
Гость
Dim2000Я этот ответ написал, не включая мозг, где тут сложности-то ;)?

В MySQL, с которым я работал до этого, данной конструкции нет.
Dim2000В общем, работать будет. Но выглядит весьма странно, примерно как вырезанные через зад гланды :).

Ну чтобы научиться правильно вставлять, иногда надо побыть извращенцем))
...
Рейтинг: 0 / 0
Оператор SELECT
    #39344633
pand
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SooDim2000Я этот ответ написал, не включая мозг, где тут сложности-то ;)?

В MySQL, с которым я работал до этого, данной конструкции нет.
Dim2000В общем, работать будет. Но выглядит весьма странно, примерно как вырезанные через зад гланды :).

Ну чтобы научиться правильно вставлять, иногда надо побыть извращенцем))
Первый раз слышу чтобы гланды вставляли. И вообще не уверен что их правильно вставлять через зад.

Вам бы лучше почитать документацию по базе перед тем как заниматься миграцией и обслуживанием базы.
Благо у SQL anywhere базовая документация довольно толковая.
...
Рейтинг: 0 / 0
Оператор SELECT
    #39344700
Soo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Soo
Гость
pand
Вам бы лучше почитать документацию по базе перед тем как заниматься миграцией и обслуживанием базы.
Благо у SQL anywhere базовая документация довольно толковая.

Читаю. Нашёл на русском языке только одну книжку 2001 года. Остальное всё на английском, на нём труднее.
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Оператор SELECT
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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