Как вызвать хранимую процедуру в IBM System i Access для Windows GUI Tool

Ну, есть два типа проблем установки / создания. Отсутствуют .h файлы и / или отсутствуют .so / .a libs. Как вы можете видеть из своего журнала, у вас отсутствует .h

. Причина для них несколько: 1.- пакет, который их доставляет, не установлен. Это означает, что эти файлы не могут быть найдены нигде в дереве / usr. Решение заключается в установке правильного пакета, убедитесь, что файлы там

2.- Вложения не найдены конфигуратором установки. Это означает, что некоторые параметры среды или установки не установлены должным образом. Какую переменную установить обычно указывается в документации; в некоторых случаях вам нужно установить что-то вне R и снова, это обычно указывается в документации.

3.- libs не находятся в LD_LIBRARY_PATH, и, надеюсь, решение этого не требует пояснений.

4.- Более глубокая ошибка компиляции / ссылки, что означает, что пакет несовместим с остальной частью sw или не был правильно портирован.

13
задан Artjom B. 27 July 2014 в 19:34
поделиться

2 ответа

Используйте ключевое слово Вызов и пропустите параметры.

call myStoredProc(parm1, parm2, ?);

Для более подробной информации см. Здесь http://www.ibm.com/developerworks/data/library/techarticle/dm-0503Melnyk/ . Интересная часть Рисунок 5. Используя командный редактор для вызова процедуры SQL

23
ответ дан 1 December 2019 в 20:29
поделиться

То, что вы хотите, возможно. Я сделал это сам много раз. К сожалению, я не в офисе прямо сейчас, поэтому он должен быть с вершины моей головы.

  1. Запустить систему I Доступ
  2. Перейти к иконам iSeries и войдите в тот, где живет ваша хранимая процедура
  3. Перейти к значкам баз данных и подключаться к правильному (у вас есть один локальный и, вероятно, один или Больше пультов)
  4. Только тогда вы увидите опцию «Запустите SQL Script» в нижней части экрана
  5. Начните эту опцию, и вы увидите редактор SQL (редактор сверху, просмотрщика / сообщения внизу)
  6. Помните, что вы уже подключены к правильным iSeries, но ваш запрос JDBC получит * libl userprofile вашего соединения. Поэтому вы должны знать схему (библиотеку iSeries) вашей сохраненной процедуры
  7. Вход «Позвоните YourSchema.yourstoredProcedure (??);» и использовать меню или ярлык для запуска этого оператора. Обратите внимание, что - в зависимости от ваших настроек JDBC (см. Меню) - правильный синтаксис может быть «/» вместо «.». Кроме того, обратите внимание, что вы можете заменить первый знак вопроса со значением.

На дополнительной ноте

  • в IAccess, при каждой схеме вы увидите иконки для таблиц, представлений и так далее. Также имеется значок для хранимых процедур. Вы увидите ваш SP там. Используйте параметры, чтобы увидеть определение и так. Эта информация включает в себя подробную информацию о параметрах
  • , если вы хотите проверить, что на ваших iSeries используйте системный каталог (это может быть сделано из редактора SQL) с «выбором * из QSYS2.SysProcedures, где процедуры_name (извините, не Конечно, о названии этого столбца прямо сейчас) = 'youstoreprocedure'; "

Очень важно: я никогда не смог проверить SP с редактором SQL (Strsql) на сам iSeries. Только редактор IACCESS SQL работал правильно.

7
ответ дан 1 December 2019 в 20:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: