Z/OS DB2 через IBM.Data.DB2
Я использую IBM.Data.DB2 через C# для доступа к базе данных DB2 на нашем мэйнфрейме Z/OS. К сожалению, я получаю "Ошибка DB2 SQL: SQLCODE=-551, SQLSTATE=42501, SQLERRMC=USER_NAME;EXECUTE PACKAGE;NULLID.SYSLH200, DRIVER=4.19.56"
Я получил ту же ошибку при попытке доступа к базе данных DB2 через IBM Data Studio, но позже она начала работать, когда я предоставил разрешения на выполнение для пакета 'NULLID.SYSLH200' своему пользователю, но я все еще получаю ту же ошибку от IBM.Data.DB2. через код C#.
Я убедился, что:
- Элемент списка Мой пользователь имеет разрешения на выполнение таблицы, к которой я выполняю запрос
- Элемент списка Мой пользователь имеет разрешения на выполнение для пакета 'NULLID.SYSLH200'
Любая идея о том, как мне заставить это работать?
1 ответ
Ну, моменты меняются, когда я отправил этот вопрос, я попытался и понял, что я должен предоставить разрешения моему пользователю на все пакеты, для которых я получаю сообщение об ошибке. Это на самом деле решило проблему.
Наша главная путаница заключалась в том, что, поскольку он работает с провайдером.Net OLEDB для DB2, он должен безупречно работать с Data Studio, а также с IBM.Data.DB2, но похоже, что каждый драйвер использует свой собственный набор пакетов DB2 для выполнения запросов и в зависимости от подход, который вы используете, вы должны предоставить разрешения на все эти пакеты для вашего пользователя.