Функция ADBOBJECTS()

Помещает в массив переменных памяти имена соединений, отношений, таблиц или представлений SQL из текущей базы данных.

Синтаксис
ADBOBJECTS(ArrayName, cSetting)

Параметры
ArrayName
Задает имя массива, в который заносятся имена. Если задано имя несуществующего массива, Visual FoxPro автоматически создает такой массив. Если задано имя существующего массива, который не в состоянии вместить все имена, Visual FoxPro автоматически увеличивает размер массива надлежащим образом. Если в массиве больше элементов, чем необходимо, Visual FoxPro укорачивает его. Если массив уже существует и функция ADBOBJECTS() возвращает 0, не найдя соответствующих имен, то массив не изменяется. Если массив не существует и ADBOBJECTS( ) возвращает 0, массив не создается.
Массив размерности 1 создается, когда вы указываете в качестве значения cSetting CONNECTION, TABLE или VIEW. Каждая строка в массиве размерности 1 содержит имя соединения, таблицы или вида в базе данных.
Массив размерности 2 создается, когда вы указываете в качестве значения cSetting RELATION. Каждая строка массива размерности 2 отвечает за реляцию в базе данных. Первый столбец массива содержит имя родительской таблицы, а второй имя дочерней таблицы. Третий столбец содержит имя тега индекса для родительской таблицы, а четвертый имя тега для дочерней.
Пятый столбец массива содержит информацию по согласованию ссылок. Этот столбец пуст, если реляция не имеет правил согласования ссылок. Если же реляция обладает правилами согласования ссылок, столбец содержит символы, соответствующие типам правил согласования ссылок для обновлений, удалений и вставок. Первый символ показывает тип правила обновления, второй тип правила удаления и третий тип правила вставки. Возможными значениями для правил обновления и удаления являются C для каскада, R для ограничения и I для игнорирования. Возможными значениями для вставок являются R для ограничения и I для игнорирования. Например, если реляция обладает каскадными обновлениями, ограниченными удаленьями и игнорируемыми правилами вставки для согласования ссылок, столбец содержит CRI.
cSetting
Определяет, какие имена следует поместить в массив переменных памяти. В следующей таблице приводится список возможных значений данного параметра и соответствующих им имен, помещаемых в массив.

cSetting	Имена
CONNECTION	Имена соединений
RELATION	Отношения таблиц
TABLE		Имена таблиц
VIEW		Имена представлений

Ключевые слова CONNECTION, RELATION, TABLE и VIEW сокращать нельзя.

Результат
Числовой

Комментарии
В момент выдачи функции ADBOBJECTS() база данных должна быть открыта и должна использоваться в качестве текущей; в противном случае Visual FoxPro сгенерирует сообщение об ошибке.

Пример

* В следующем примере открывается база данных testdata, а затем
* используется функция ADBOBJECTS( ), чтобы создать массив gaTables,
* содержащий имена таблиц базы данных. После этого имена таблиц
* выводятся на дисплей.
CLOSE DATABASES
SET PATH TO (SYS(2004) + 'samples\data\')	  && Sets path to database
OPEN DATABASE testdata  && Open testdata database
CLEAR
? ADBOBJECTS(gaTables, 'TABLE')	  && An array of tables names
DISPLAY MEMORY LIKE gaTables	  && Displays the contents of the array

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.