powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / Выполнить кусок SPL, не создавая prc/fnc
8 сообщений из 8, страница 1 из 1
Выполнить кусок SPL, не создавая prc/fnc
    #35864441
ns76
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый утро/день/вечер/ночь.

Можно ли выполнить кусок на SPL, не создавая процедуры или функции, тое есть что вроде:

Код: plaintext
1.
2.
3.
4.
DECLARE my_var int;
FOR my_var IN ( 0  TO  9  STEP  1 )
       UPDATE my_table SET my_col = my_var;
END FOR;

или без обертывания в procedure/function никак?
...
Рейтинг: 0 / 0
Выполнить кусок SPL, не создавая prc/fnc
    #35864511
Ikir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно скрипт написать и выполнить через dbaccess.
PS Выражение UPDATE какое-то странное...
...
Рейтинг: 0 / 0
Выполнить кусок SPL, не создавая prc/fnc
    #35865507
ns76
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IkirМожно скрипт написать и выполнить через dbaccess.
эээ, можно примерчик, а то что-то не получается
Код: plaintext
1.
2.
3.
4.
DECLARE my_var int;
#^
#   201 : A syntax error has occurred.
#
IkirPS Выражение UPDATE какое-то странное...
Да, с точки зрения логики лишено всякого смысла(это пример), мне просто понять как SPL код(например цикл) использовать помимо процедур/функций.

PS. Это вообще возможно?
...
Рейтинг: 0 / 0
Выполнить кусок SPL, не создавая prc/fnc
    #35865566
Фотография Тан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ns76Добрый утро/день/вечер/ночь.

Можно ли выполнить кусок на SPL, не создавая процедуры или функции, тое есть что вроде:

Код: plaintext
1.
2.
3.
4.
DECLARE my_var int;
FOR my_var IN ( 0  TO  9  STEP  1 )
       UPDATE my_table SET my_col = my_var;
END FOR;

или без обертывания в procedure/function никак?никак
...
Рейтинг: 0 / 0
Выполнить кусок SPL, не создавая prc/fnc
    #35865687
Ikir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ns76PS. Это вообще возможно?

Например скрипт:

#!/bin/sh
CUR_ROW=0;
MAX_ROW=9;
DBNAME=имя вашей базы
while [ ${CUR_ROW} -le ${MAX_ROW} ]
do
dbaccess ${DBNAME} <<!EOF
UPDATE my_table SET my_col = ${CUR_ROW};
!EOF
CUR_ROW=`expr ${CUR_ROW} + 1`
done
...
Рейтинг: 0 / 0
Выполнить кусок SPL, не создавая prc/fnc
    #35866728
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ns76IkirМожно скрипт написать и выполнить через dbaccess.
эээ, можно примерчик, а то что-то не получается
Код: plaintext
1.
2.
3.
4.
DECLARE my_var int;
#^
#   201 : A syntax error has occurred.
#


Informix SQL/SPL читайте. В ANSI SQL переменных нет. И каждая СУБД имеет (или не имеет) отличающуюся функциональность.

В данном случае не DECLARE, а DEFINE, и не само по себе, а внутри ХП должно быть.
На уровне чистого SQL вы в явном виде переменные не получите - разве только опосредованно через использование функций и таблиц %).
...
Рейтинг: 0 / 0
Выполнить кусок SPL, не создавая prc/fnc
    #35866753
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ns76
Можно ли выполнить кусок на SPL , не создавая процедуры или функции, то есть что-то вроде:

Код: plaintext
1.
2.
3.
4.
DECLARE my_var int;
FOR my_var IN ( 0  TO  9  STEP  1 )
       UPDATE my_table SET my_col = my_var;
END FOR;

или без обертывания в procedure/function никак ?
Грубо говоря, нужно читать в цитате выделенное жирным :). SPL на верхнем уровне и содержит пользовательские процедуры/функции :).
Скажите что Вам с точки зрения прикладной задачи нужно - тогда и покажем в нужную сторону.
И давайте аргументы в пользу "не создавая процедуры или функции". Может это тробование у Вас "надумано" без серьёзных аргументов....
...
Рейтинг: 0 / 0
Выполнить кусок SPL, не создавая prc/fnc
    #35866760
Фотография Евгений Фадеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нельзя.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Informix [игнор отключен] [закрыт для гостей] / Выполнить кусок SPL, не создавая prc/fnc
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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