Команда COPY TO ARRAY
См. также Пример
Синтаксис
COPY TO ARRAY ArrayName
Параметры
ArrayName
Задает массив, в который нужно скопировать данные из таблицы.
FIELDS FieldList
Указывает, что в массив следует скопировать только поля, включенные в список FieldList. Если опустить предложение FIELDS FieldList, все поля будут скопированы в массив, если у него достаточно столбцов.
Scope
Задает диапазон записей, копируемых в массив. В копировании будут участвовать
только записи указанного диапазона. Он может задаваться следующими предложе
иями: ALL, NEXT nRecords, RECORD nRecordNumber и REST. Подробнее о предложениях диапазона см. тему Предложения диапазона или главу 2 "Оптимизация приложений" Руководства разработчика.
По умолчанию в команде COPY TO ARRAY используется диапазон ALL.
FOR lExpression1
Задает копирование только записей, удовлетворяющих логическому условию lExpression1. Предложение FOR позволяет выполнять условное копирование записей в массив,
отфильтровывая ненужные записи.
Технология Rushmore допускает оптимизацию запроса COPY TO ARRAY с предложением
FOR lExpression1, если lExpression1 является оптимизируемым выражением. Для повышения производительности рекомен
уется пользоваться в предложении FOR оптимизируемым выражением. Подробнее о вы
ажениях, оптимизируемых по технологии Rushmore, см. темы SET OPTIMIZE и Основы технологии Rushmore
WHILE lExpression2
Задает условие, согласно которому записи будут копироваться в массив, пока
огическое выражение lExpression2 остается истинным (.T.).
NOOPTIMIZE
Блокирует оптимизацию выполнения команды COPY TO ARRAY по технологии Rushmore.
Подробнее об этом см. темы SET OPTIMIZE и Основы технологии Rushmore
Комментарии
Команда COPY TO ARRAY аналогична команде SCATTER. Команда COPY TO ARRAY копи
ует несколько записей в массив, а SCATTER только одну запись в массив или в набор переменных памяти. Обе команды, COPY
TO ARRAY и SCATTER, создают новый массив, если массива с заданным именем не
существует.
Чтобы скопировать одну запись в массив, можно задать одномерный массив. В
состав такого массива должно входить столько же элементов, сколько полей входит в
таблицу, не считая memo-полей. Memo-поля команда COPY TO ARRAY игнорирует.
Если вы задали одномерный массив, первое поле записи будет сохранено в первом
лементе массива, второе поле во втором элементе и т.д. Если в одномерном массиве оказалось больше элеме
тов, чем полей в таблице, оставшиеся элементы не изменяются. Если в массиве ме
ьше элементов, чем полей в таблице, лишние поля игнорируются.
Чтобы скопировать в массив несколько записей или всю таблицу целиком, задайте
вумерный массив. Число строк в массиве это число записей, которое массив может вместить, а число столбцов массива это число полей, которое можно в него поместить.
Каждая запись сохраняется в одной строке массива, а каждое поле записи сохра
яется в одном столбце массива. В каждой записи первое поле сохраняется в первом
столбце массива, второе поле во втором столбце и т.д. Если в массиве оказалось больше столбцов, чем полей
в таблице, все оставшиеся столбцы не изменяются. Если в массиве меньше стол
цов, чем полей в таблице, лишние поля не сохраняются в массиве.
Каждая последующая строка массива заполняется содержимым очередной записи таб
ицы. Если в массиве больше строк, чем записей в таблице, оставшиеся строки не
изменяются. Если в массиве меньше строк, чем записей в таблице, лишние записи не
сохраняются в массиве.
Содержимое массива можно скопировать в новые табличные записи командой APPEND
FROM ARRAY. Кроме того, с помощью команды GATHER можно скопировать данные из
массива или из набора переменных памяти в записи таблицы.
[FIELDS FieldList]
[Scope] [FOR lExpression1] [WHILE lExpression2]
[NOOPTIMIZE]
Новое на сайте
-
Обновлен портфель программиста
Добавлены: Установка HTML Help (Создание справочной системы), Imagedit.zip - Графический редактор ( ico и bmp), Библиотека локализации HTML Help (Русский) -
Новые примеры программ
Установка библиотек, Игровая программа "Охота на лис", Установка библиотек "Охота на лис", plastic -"Платежки", Библиотеки (на FPD26), platan -"Платежки" (на Clipper 5.2) -
Обновленна справка
Подсказки, технология программирования и использование Visual FoxPro. Команды, функции, операторы, объекты, свойства, события и методы.