Кэш InterSystems SQL. Проверить, существует ли таблица

Какой SQL-запрос я могу использовать, чтобы проверить, существует ли таблица.

Мне нужно поддерживать разные версии схемы, и в некоторых развертываниях могут отсутствовать определенные таблицы.


person AlexP    schedule 03.11.2011    source источник
comment
Таблицы находятся в кеше или подключены извне через jdbc/odbc?   -  person mccrackend    schedule 04.11.2011


Ответы (1)


Если это таблицы Cache, вы можете использовать системную таблицу %Dictionary.CompiledClass.

select id from %Dictionary.CompiledClass where SqlSchemaName='%BI' and SqlTableName='Alerts'

Или, если вы знаете имя класса Cache вашей таблицы,

select id from %Dictionary.CompiledClass where ID='%BI.Alerts'

Эти запросы вернут 1 строку, если таблица %BI.Alerts существует.

person SSH    schedule 07.11.2011
comment
Спасибо, это то, что мне было нужно. - person AlexP; 07.11.2011