Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как получить значение из последовательности в переменную.
|
|||
|---|---|---|---|
|
#18+
Что не так в этом коде? create function DataBase.MyFunc() returns integer begin atomic declare CurVar integer; Set CurVal = (Next Value For MySeq); Return CurVal; end / Windows XP, DB2 9. DB2 ругается: ERROR [42601] [IBM][DB2/NT] SQL0104N Обнаружен неправильный элемент "END-OF-STATEMENT" после текста "end". Список правильных элементов: "JOIN <joined_table>". SQLSTATE=42601 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2006, 18:55 |
|
||
|
Как получить значение из последовательности в переменную.
|
|||
|---|---|---|---|
|
#18+
alapt create function DataBase.MyFunc() returns integer begin atomic declare CurVar integer; Set CurVal = (Next Value For MySeq); Return CurVal; end / Надо бы одинаково назвать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2006, 19:54 |
|
||
|
Как получить значение из последовательности в переменную.
|
|||
|---|---|---|---|
|
#18+
Mark BarinsteinНадо бы одинаково назвать... Не помогает. Ошибка та же. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2006, 12:16 |
|
||
|
Как получить значение из последовательности в переменную.
|
|||
|---|---|---|---|
|
#18+
Это было необходимое условие. :) Достаточное - поместите текст создания в файл (например file.sql) и из db2cmd выполните Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2006, 12:47 |
|
||
|
Как получить значение из последовательности в переменную.
|
|||
|---|---|---|---|
|
#18+
Mark BarinsteinЭто было необходимое условие. :) Достаточное - поместите текст создания в файл (например file.sql) и из db2cmd выполните Код: plaintext А можно по подробнее: что такое db2cmd: а) при запуске данной команды из ibm\sqllib\bin\db2cmd.exe она ругается на отсутствие коннекта с базой. На команду connect to toolsdb отвечает "connect" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. б) в центре управления -> редактор команд (команду я ввожу без последней /, как написано у Вас) Символ / установлен как символ завершения оператора. ---------------------------- Введенные команды ------------------------------ db2 -td/ -f file.sql/ ------------------------------------------------------------------------------ db2 -td/ -f file.sql SQL0104N Обнаружен неправильный элемент "db2" после текста "НАЧАЛО-ОПЕРАТОРА". Список правильных элементов: "SELECT". SQLSTATE=42601 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2006, 16:30 |
|
||
|
Как получить значение из последовательности в переменную.
|
|||
|---|---|---|---|
|
#18+
Грубо говоря, db2cmd.exe это cmd.exe + инициализированные переменные окружения для DB2. Работать в нем с базой надо так: Код: plaintext 1. 2. И вводите свою команду создания, завершающуюся этим символом (без этих db2 -td/ -f). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2006, 17:06 |
|
||
|
Как получить значение из последовательности в переменную.
|
|||
|---|---|---|---|
|
#18+
Следующая серия: create function DataBase.MyFunc(aFName varchar(255), aSName varchar(255)) returns integer modifies sql data begin atomic declare CurVal integer; Set CurVal = (Next Value For MySeq); Insert Into LFiles (Id, FName, SName, DateLoad, IsSuccess) Values (CurVal, aFName, aSName, Current_Date, 0); Return CurVal; end / TOAD говорит: ERROR [42601] [IBM][DB2/NT] SQL0104N Обнаружен неправильный элемент "END-OF-STATEMENT" после текста "end". Список правильных элементов: "JOIN <joined_table>". SQLSTATE=42601 Редактор команд DB2: DB21034E Данная команда обрабатывалась как оператор SQL, поскольку она не является допустимой командой процессора командной строки. При обработке SQL было получено сообщение: SQL0628N В условии "MODIFIES SQL DATA" есть повторные или конфликтующие ключевые слова. LINE NUMBER=10. SQLSTATE=42613 SQL0628N В условии "MODIFIES SQL DATA " есть повторные или конфликтующие ключевые слова. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2006, 15:14 |
|
||
|
Как получить значение из последовательности в переменную.
|
|||
|---|---|---|---|
|
#18+
Как сказано в Писании , вы не можете декларировать скалярные функции, как MODIFIES SQL DATA. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2006, 15:42 |
|
||
|
Как получить значение из последовательности в переменную.
|
|||
|---|---|---|---|
|
#18+
Кстати хороший метод это порытся по этому форуму и найти письмо от меня по поводу select из insert получится что-то типа Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2006, 16:22 |
|
||
|
Как получить значение из последовательности в переменную.
|
|||
|---|---|---|---|
|
#18+
Nikolay KulikovНачиная с некоторого времени, DB2 стала проверять, что ее пытаются обмануть и на попытке сделать что-то типа Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2006, 17:45 |
|
||
|
Как получить значение из последовательности в переменную.
|
|||
|---|---|---|---|
|
#18+
Да я это знаю, но я думаю что слегка переделав логику, которая в данном контексте нам сожалению не известна через Select from insert можно решить задачу получения и сохранения предыдущего значения sequence ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2006, 17:49 |
|
||
|
|

start [/forum/topic.php?fid=43&msg=33973506&tid=1605133]: |
0ms |
get settings: |
6ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
87ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 260ms |
| total: | 439ms |

| 0 / 0 |
