В настоящее время я пишу программу, которая позволяет пользователю выбирать между базами данных MS SQL, Oracle, DB2 и iSeries. Приложение построено на VB. NET, и выбор «типа базы данных» отображается на переключатели. Когда пользователь щелкает переключатель, он вызывает экземпляр DataSourceEnumerator каждого провайдера. На основании полученной информации он заполняет поле со списком ServerName именами серверов, которые счетчик обнаруживает и может выбрать пользователь.
Я хотел, чтобы эта же функциональность продолжалась во всем приложении. Поэтому для следующего поля со списком пользователю необходимо выбрать базу данных на этом сервере. Для MS SQL я выполняю запрос,
SELECT name FROM sys.databases WHERE name NOT IN ('master', 'tempdb', 'model', 'msdb');
И Oracle я использую
select * from SYS.global_name
.
Это работает именно так, как я планировал, потому что результаты добавляются в поле со списком для выбора пользователем. У меня проблемы с поиском запроса для IBM DB2 и / или iSeries, который мог бы обеспечить такую же функциональность. Я прочитал документацию по обоим и не могу найти то, что ищу. Разве такой запрос невозможен в DB2 / iSeries? И если это будет правильный запрос?