Как прочитать параметр класса с помощью Caché SQL?

Как прочитать параметр класса с помощью Caché SQL?

select * from table не перечисляет никаких параметров класса.


person O.O    schedule 30.04.2013    source источник
comment
@MichaelGardner - я имею в виду параметр класса: docs.intersystems.com/cache20121/csp/docbook/   -  person O.O    schedule 30.04.2013
comment
Я удивлен и разочарован тем, что эта отметка закрыта - кажется, мы видим, что это происходит время от времени, когда люди не понимают, что вопрос касается InterSystems Caché. Вероятно, это побочный эффект того, что это такой нишевый продукт для баз данных (и, возможно, единственная ссылка на Caché в тегах, что делает вопрос действительно общим). Этот вопрос кажется вполне приемлемым для базы данных Caché, но у меня недостаточно репутации, чтобы проголосовать за его повторное открытие.   -  person Derek    schedule 02.05.2013
comment
Похоже, я пометил это для модерации, и это снова было открыто. Я немного отредактировал заголовок и вопрос, чтобы было понятнее, что это не общий вопрос SQL.   -  person Derek    schedule 03.05.2013


Ответы (1)


Параметры относятся к определению класса, а не к объекту или строке. Следовательно, вы не можете найти их, запросив таблицу классов. Скорее, вам нужно запросить таблицы определения классов. Они находятся в классах% Dictionary.

Для этого конкретного запроса вы можете использовать

SELECT * FROM %Dictionary.ParameterDefinition WHERE parent='Sample.Person'

В пространстве имен SAMPLES это должно дать результаты для всех параметров, которые являются частью Sample.Person - в данном случае только EXTENTQUERYSPEC.

person Brandon Horst    schedule 30.04.2013
comment
Значит, столбец _Default содержит текущее значение параметра? - person O.O; 01.05.2013
comment
_Default содержит значение по умолчанию - единственное значение, хранящееся в базе данных. - person Brandon Horst; 01.05.2013