|
|
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
Выполняется оракловая процедура, имеющая один входной параметр. В результате ее деуствия в таблицутавляются строки. DECLARE POpdate PROCEDURE FOR EntryPipelineOpdate (vopdate =>:opdate) USING SQLCA; EXECUTE POpdate; Далее пытаюсь сделать проверку на успешность выполнения и при обращении к SQLCA.SQLCode получаю значение равным 100. Сама процедура выполнилась без ошибок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 10:56 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
Ssqlcode 100 Это значит что курсор в вашей процедуре отстрелялся. Фетч ничего поймал-то ли записи закончились,то-ли не начaлись. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 11:15 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
PB Help0 Success. 100 Fetched row not found. -1 Error ; the statement failed. Use SQLErrText or SQLDBCode to obtain the detail. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 11:18 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
KOLCHOZ_POSTEVENTSsqlcode 100 Это значит что курсор в вашей процедуре отстрелялся. Фетч ничего поймал-то ли записи закончились,то-ли не начaлись. Процедура не использует курсоры. У нее также отсутствуют параметры типа out. Процедура отрабатывает успешно. Поясните, почему 100, а не 0? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 11:34 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
Марк, спасибо, но это мне известно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 11:35 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
А что я ещё могу добавить? У меня компилятор не пропускает,то что у вас написано. Палёная восьмёрка у меня. Это пропускает,например. Код: plaintext 1. 2. 3. 4. Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 12:16 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
(vopdate =>:opdate) данный ситаксис приведен в хелпе. А вот так возвращает 0 sql= "begin EntryPipelineOpdate (to_date('" + String(opdate) + "','dd.mm.yyyy')) ; end;" EXECUTE IMMEDIATE :sql; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 12:32 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
(vopdate =>:opdate) данный ситаксис приведен в хелпе для 9 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 12:33 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
pb_new(vopdate =>:opdate) данный ситаксис приведен в хелпе для 9 Вообще в Oracle используется два метода передачи параметров - позиционный (т.е. без имени параметра) и именованный (так, как приведено выше). А если использовать позиционный без EXECUTE IMMEDIATE ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 12:38 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
А если использовать позиционный без EXECUTE IMMEDIATE ? 100 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 13:05 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
Уже даже help процитировали, 100 -- это не ошибка. Возникает, если update или delete в SP не обработал ни одной строки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 14:29 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
Забейте и считайте 0 и 100 успешными кодами для процедур (все равно для процедур код 100 невозможен). Для функций же 100 - ошибка: лишний fetch результата функции ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 14:36 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
Oleg1Уже даже help процитировали, 100 -- это не ошибка. Возникает, если update или delete в SP не обработал ни одной строки. 100 возникает даже если тело процедуры пустое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 14:37 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyЗабейте и считайте 0 и 100 успешными кодами для процедур (все равно для процедур код 100 невозможен). Для функций же 100 - ошибка: лишний fetch результата функции ок ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 14:48 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2007, 14:08 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
Скорее всего это из-за того, что процедура ничего не возвращает. Попробуйте сделать в процедуре return(...). Тогда будет sqlcode = 0. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2007, 15:23 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
DRodСкорее всего это из-за того, что процедура ничего не возвращает. Попробуйте сделать в процедуре return(...). Тогда будет sqlcode = 0. В процедуре может быть только "голый" RETURN, т.е. БЕЗ возвращаемого значения :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2007, 16:02 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
Добавьте в качестве возвращаемых параметров Код возвращаемой ошибки и Текст ошибки. Заполнение этих полей должно быть в процедуре. Иначе смысла выполнения процедуры нет. У Вас может произойти на сервере все что угодно, Вы же ничего не контролируете. Мы используем такие 2 параметра как стандарт при вызове любой процедуры. С уважением, ytrewq. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2007, 19:15 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
ytrewqДобавьте в качестве возвращаемых параметров Код возвращаемой ошибки и Текст ошибки. Заполнение этих полей должно быть в процедуре. Иначе смысла выполнения процедуры нет. У Вас может произойти на сервере все что угодно, Вы же ничего не контролируете.Это как это?! Процедура или выполняется, или нет. ytrewqМы используем такие 2 параметра как стандарт при вызове любой процедуры. С уважением, ytrewq.В большистве случаев это излишество. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2007, 19:35 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
Может быть, и так. Однако, выполняя на сервере что-либо, желательно иметь подробную информацию, завершилось ли оно так, как надо. Все-таки по отношению к клиенту сервер - это внешнее приложение и не лишне проконтролировать, что там все действия завершились благополучно. С уважением, ytrewq. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 10:03 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
ytrewqМожет быть, и так. Однако, выполняя на сервере что-либо, желательно иметь подробную информацию, завершилось ли оно так, как надо. Все-таки по отношению к клиенту сервер - это внешнее приложение и не лишне проконтролировать, что там все действия завершились благополучно. С уважением, ytrewq. Если действия процедуры вызвали ошибку и она не обработана внутри, ошибка распространяется во внешнюю среду. Если мы хотим трактовать некоторые действия как ошибку, мы можем генерить пользовательское исключение. Так что контроль работы процедуры происходит в любом случае. Другое дело, что кому как нравится - обрабатывать ошибку сразу на сервере или на клиенте... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 10:31 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
Правильно, код и должен быть 100 при нормальной работе процедуры Она же не возвращает никаких данных, а 100 и означает, что исполнено, но не возвращено никаких данных Как вариант - обернуть процедуру в функцию ----------------------------------------------------------------------------- Главная деталь любой машины - голова ее владельца ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 10:36 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
Да, и еще Судя по-постам, забывается одна простая вещь Oracle != MS SQL ----------------------------------------------------------------------------- Главная деталь любой машины - голова ее владельца ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 10:38 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
tru55 DRodСкорее всего это из-за того, что процедура ничего не возвращает. Попробуйте сделать в процедуре return(...). Тогда будет sqlcode = 0. В процедуре может быть только "голый" RETURN, т.е. БЕЗ возвращаемого значения :) Пардон! Извиняюсь. Я имел в виду, что процедура ничегно не возвращает, т.е. пустой "ResultSet". Верните какой-нибудь результат и sqlcode будет равен нулю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 17:14 |
|
||
|
sqlcode = 100 при успешном вызове оракловой процедуры
|
|||
|---|---|---|---|
|
#18+
spas2001Правильно, код и должен быть 100 при нормальной работе процедуры а как же этот случай pb_newА вот так возвращает 0 sql= "begin EntryPipelineOpdate (to_date('" + String(opdate) + "','dd.mm.yyyy')) ; end;" EXECUTE IMMEDIATE :sql; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2007, 08:41 |
|
||
|
|

start [/forum/topic.php?fid=15&msg=34924789&tid=1336906]: |
0ms |
get settings: |
16ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
13ms |
get forum data: |
4ms |
get page messages: |
59ms |
get tp. blocked users: |
2ms |
| others: | 245ms |
| total: | 406ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...