Распечатать страницу

Команды и функции для таблиц и их индексов в VFP

« Назад

Приведен в табл. 15.1.

Таблица 15.1

Список команд и функций

Команда или функция

Описание

Выбор рабочей области

ACTIVATE WINDOW
                VIEW

Открывает окно Data Session

SELECT

Делает текущей указанную рабочую область

SET | SET VIEW ON

Открывает окно Data Session

Открытие и закрытие таблицы

ISEXCLUSIVE( )

Возвращает.T., если таблица или база данных открыта в режиме монопольного доступа, или .F. – в противном случае

ISREADONLY( )

Определяет, открыта ли таблица или база данных только для чтения

CLOSE ALL

Выбирает рабочую область 1 и закрывает базы данных, таблицы и индексы, файлы низкого уровня, проектировщики и диспетчер проета

CLOSE TABLES

Закрывает открытые таблицы

SET TABLEPROMPT

Активизирует или отключает режим появления диалога Open в командах, позволяющих пользователю выбирать таблицу, если она не открыта

USE

Открывает (закрывает) таблицу или SQL-вид, а также индексные файлы таблицы

Создание и изменение таблиц

ALTER TABLE – SQL

Программно изменяет структуру таблицы

COPY STRUCTURE

Создает новую пустую таблицу, перенимая структуру текущей таблицы

COPY STRUCTURE
EXTENDED

Создает новую таблицу, с записями, содержащими структуру текущей таблицы

CREATE

Создает новую таблицу VFP

CREATE FROM

Создает таблицу, по данным таблицы, построенной командой COPY STRUCTURE EXTENDED

CREATE TABLE – SQL

Создает таблицу по списку полей или из массива

MODIFY STRUCTURE

Открывает проектировщик таблицы

Сортировка таблицы

DISKSPACE( )

Возвращает размер дискового пространства (в байтах) на указанном параметром диске (томе)

SORT

Сортирует записи текущей таблицы, размещая результат в новой таблице

SORTWORK

Опция файла конфигурации. Содержит имя директории, в которой размещается создаваемый при сортировке таблицы временный файл

SYS(2020)

Возвращает общий размер диска по умолчанию, задаваемого командой SET DEFAULT

Добавление записей

APPEND

Добавляет одну или более записей в конец таблицы

APPEND FROM ARRAY

Добавляет записи в текущую таблицу из массива

INSERT – SQL

Добавляют одну или более записей в конец таблицы

SET CARRY

Определяет, будут ли переноситься данные текущей записи в добавленную запись

Обновление записей

BLANK

Очищает поля одной или нескольких записей таблицы

GATHER

Заменяет значения полей текущей записи таблицы значениями элементов одномерного массива, переменных памяти или свойств объекта

REPLACE FROM ARRAY

Обновляет запись таблицы значениями элементов строки массива

REPLACE

Обновляет записи таблицы

UPDATE – SQL

"

Копирование записей

COPY TO ARRAY

Копирует записи таблицы в массив

SCATTER

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

Удаление записей

DELETE

Проставляет пометку удаления одной или нескольких записей таблицы

DELETE – SQL

Проставляет пометку удаления записей таблицы

RECALL

Снимает пометки удаления записей таблицы

PACK

Удаляет в таблице все записи с пометкой удаления

ZAP

Удаляет все записи таблицы, оставляя лишь ее структуру

Вычисления в таблицах

AVERAGE

Вычисляет средние арифметические значения числовых выражений или полей

CALCULATE

Выполняет финансовые и статистические операции с полями таблиц или с выражениями, включающими поля

COUNT

Вычисляет число записей, удовлетворяющих заданным условиям

SUM

Вычисляет суммы значений, возвращаемых заданными выражениями

TOTAL

Вычисляет суммы числовых полей (итоги) текущей таблицы по указанному полю (выражению)

Сопутствующие команды

CLEAR FIELDS

Освобождает список полей, созданный SET FIELDS и выполняет SET FIELDS OFF

DISPLAY | LIST STATUS

Отображает статус окружения VFP

EXTERNAL TABLE

Предупреждает диспетчер проекта о внешней ссылке (внешней таблице)

FLUSH

Сохраняет изменения в таблицах и индексах на диске

SET AUTOINCERROR

Задает, будет ли генерироваться ошибка при попытке обновить или добавить поле с автоматически увеличиваемым значением

SET BLOCKSIZE

Задает размер блока, используемый при размещении memo-полей на диске

SET COMPATIBLE

Управляет совместимостью с Microsoft FoxBASE+ и другими языками

SET DELETED

Определяет, будет ли VFP обрабатывать записи с пометкой удаления или нет

SET EXCLUSIVE

Определяет, будет ли VFP открывать таблицы для монопольного или разделяемого доступа

SET FIELDS

Задает поля, к которым может быть осуществлен доступ

SET FILTER

Задает условия доступности записей таблицы

SET FULLPATH

Определяет, будут ли функции CDX( ), DBF( ), MDX( ) и NDX( ) возвращать полное имя файла или только имя файла с именем диска

SET TABLEVALIDATE

Задает уровень проверки таблицы

TABLEVALIDATE

Опция файла конфигурации. Задает уровень проверки таблицы

_TALLY

Системная переменная. Хранит число обработанных записей

Функции для таблиц

ADBOBJECTS( )

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

ALIAS( )

Возвращает псевдоним таблицы

AUSED( )

Заносит в двумерный массив псевдонимы открытых таблиц и соответствующие номера рабочих областей

DBF( )

Возвращает имя файла таблицы

DBGETPROP( )

Возвращает значение свойства компонента базы данных

DBSETPROP( )

Устанавливает значение свойства компонента базы данных

DELETED( )

Возвращает .T., если текущая запись таблицы имеет пометку удаления, или .F. – в противном случае

FCOUNT( )

Возвращает число полей в таблице

FIELD( )

Возвращает имя поля таблицы или имя заголовка поля

FSIZE( )

Возвращает размер в байтах заданного поля или файла

HEADER( )

Возвращает число байт в заголовке таблицы

INDBC( )

Определяет, есть ли указанный объект в текущей базе данных

ISBLANK( )

Возвращает .T., если значение является чистым

LUPDATE( )

Возвращает дату последнего обновления таблицы

RECCOUNT( )

Возвращает число записей в таблице

RECNO( )

Возвращает номер текущей записи таблицы

RECSIZE( )

Возвращает размер (в байтах) одной записи таблицы

SELECT( )

Возвращает номер рабочей области

USED( )

Определяет, используется ли рабочая область или псевдоним таблицы

SYS(3055)

Возвращает установленный на момент ее вызова уровень сложности, разрешенный в опциях FOR и WHERE

Команды для индексов

CLOSE INDEXES

Закрывает все открытые индексные файлы таблицы текущей рабочей области

COPY INDEXES

Создает составной индексный CDX-файл текущей таблицы из ее индексных IDX-файлов

COPY TAG

Создает индексный IDX-файл из тега составного индексного CDX-файла текущей таблицы

DELETE TAG

Удаляет тег из составного индексного CDX-файла

INDEX

Создает индексный IDX-файл или тег CDX-файла

INDEX

Опция файла конфигурации. Задает расширение индексных файлов VFP. Значение по умолчанию – IDX

REINDEX

Перестраивает все открытые индексные файлы текущей таблицы

SET INDEX

Открывает один или более индексных файлов для текущей таблицы

SET ODOMETER

Задает интервал между сообщениями при выполнении команды VFP

SET ORDER

Устанавливает контролирующий индексный файл или тег

SET TALK

Устанавливает режим отображения результатов выполнения команд VFP

SET UNIQUE

Задает, могут ли в индексном файле присутствовать записи с повторяющимися индексными ключами или нет

Функции для индексов

ATAGINFO( )

Формирует двумерный массив, содержащий сведения об именах, количестве и типах индексов и индексных выражений

CANDIDATE( )

Возвращает .T., если тег является кандидатным, или .F. – в противном случае

CDX( ) | MDX( )

Возвращает имя открытого составного индексного файла

DESCENDING( )

Возвращает .T., если тег или индекс созданы с опцией DESCENDING, или если эта опция включена для тега или индекса при его открытии

FOR( ) | SYS(2021)

Возвращает выражение индексного фильтра индекса или тега таблицы

IDXCOLLATE( )

Возвращает строку, содержащую collate-последовательность для индекса IDX-файла или тега CDX-файла таблицы

KEY( ) | SYS(14)

Возвращает строку, содержащую индексное выражение тега составного CDX-файла или индексного IDX-файла таблицы

NDX( )

Возвращает имя открытого индексного IDX-файла

ORDER( ) | SYS(22)

Возвращает имя управляющего индексного IDX-файла или тега CDX-файла таблицы

PRIMARY( )

Возвращает .T., если тег является первичным, или .F. – в противном случае

SYS(21)

Возвращает строку, содержащую номер управляющего индекса или тега

TAG( )

Возвращает имя тега открытого составного индексного CDX-файла или имя IDX-файла

TAGCOUNT( )

Возвращает число тегов составного индексного CDX-файла и число открытых IDX-файлов

TAGNO( )

Возвращает позицию тега в составном индексном CDX-файле или индекса в открытых IDX-файлах

Команды для перемещения и поиска в таблице

CONTINUE

Продолжает поиск, начатый предшествующей командой LOCATE

LOCATE

Выполняет поиск в текущей, возможно неиндексированной таблице первой записи, отвечающей заданному условию

GO | GOTO

Перемещает файловый указатель таблицы на заданную запись

SCAN ... ENDSCAN

Перемещает файловый указатель в текущей таблице, выполняя помещенную между SCAN и ENDSCAN последовательность операторов

SEEK

Ищет в индексированной таблице запись с заданным ключом

SET NEAR

Определяет положение файла (таблицы) после неудачного поиска, выполненного командой SEEK

SKIP

Перемещает вперед или назад таблицу

Функции для перемещения и поиска в таблице

BOF( )

Возвращает .T., если выполнена попытка установить файловый указатель перед первой записью таблицы, или .F. – в противном случае

EOF( )

Возвращает .T., если выполнена попытка установить файловый указатель вслед за последней записью таблицы, или .F. – в противном случае

FOUND( )

Возвращает .T., если команда CONTINUE, LOCATE или SEEK выполнена результативно, или .F. – в противном случае

INDEXSEEK( )

Ищет в индексированной таблице первую запись, значение ключа которой отвечает заданному условию. Поиск может выполняться как с перемещением, так и без перемещения файла

KEYMATCH( )

Ищет индексный ключ в индексном IDX-файле или теге таблицы; поиск выполняется без перемещения файлового указателя

LOOKUP( )

Ищет в таблице запись с полем, отвечающим заданному выражению

SEEK( )

Ищет в индексированной таблице запись с заданным ключом

Команды, используемые при блокировке таблиц и записей

ON ERROR

Задает команду, выполняемую при возникновении ошибки VFP

SET MULTILOCKS

Задает или отменяет режим блокировки нескольких записей функциями LOCK( ) и RLOCK( )

SET REPROCESS

Задает число попыток или интервал, в пределах которого VFP пытается заблокировать файл или его записи после неудачной попытки блокирования

SET STATUS

Отображает или скрывает текстовую строку состояний

UNLOCK

Снимает блокировку записи, группы записей, таблицы или всех таблиц

Функции, используемые при блокировке таблиц и записей

FLOCK( )

Пытается заблокировать таблицу

ISFLOCKED( )

Возвращает статус блокировки таблицы

ISRLOCKED( )

Возвращает статус блокировки записи таблицы

LOCK( )

Пытается заблокировать одну или несколько записей таблицы

RLOCK( )

То же, что и LOCK( )

SYS(2011)

Возвращает строку, содержащую статус блокировки таблицы или ее записи

SYS(3052)

Определяет, будет ли VFP использовать установку SET REPROCESS при попытке заблокировать индексный или memo-файл

Экспорт и импорт данных

APPEND FROM

Добавляет записи в конец текущей таблицы из другого файла

COPY TO

Создает новый файл, перенося в него содержимое текущей таблицы

EXPORT

Копирует данные текущей таблицы VFP в файл иного формата

IMPORT

Импортирует данные из файла в новую таблицу VFP

Курсоры

CREATE CURSOR – SQL

Создает временную таблицу (курсор)

CursorAdapter

Класс. Поддерживает обработку курсоров VFP, а также ODBC, ADO и XML

CURSORGETPROP( )

Получает значение свойства таблицы или курсора

CURSORSETPROP( )

Устанавливает значение свойства таблицы или курсора

GETCURSORADAPTER( )

Возвращает ссылку на объект CursorAdapter

Фиксация и отмена изменений

CURVAL( )

Возвращает для текущей записи таблицы или удаленного источника хранимое на диске значение поля

GETFLDSTATE( )

Возвращает статус изменения значения поля текущей записи или статус ее удаления

GETNEXTMODIFIED( )

Возвращает номер первой измененной записи, расположенной после заданной записи

OLDVAL( )

Возвращает для текущей записи таблицы оригинальное значение поля

SETFLDSTATE( )

Устанавливает статус изменения поля или статус удаления записи

TABLEREVERT( )

Отменяет изменения, выполненные в буферизованной записи, таблице, курсоре или курсоре-адаптере

TABLEUPDATE( )

Фиксирует изменения, выполненные в буферизованной записи, таблице, курсоре или курсоре-адаптере

Транзакции

BEGIN TRANSACTION

Начинает транзакцию

END TRANSACTION

Завершает текущую транзакцию

ISTRANSACTABLE( )

Определяет, поддерживает ли свободная таблица или свободный курсор транзакции

MAKETRANSACTABLE( )

Позволяет свободной таблице или свободному курсору поддерживать транзакции

ROLLBACK

Отменяет изменения, выполненные в течение текущей транзакции

TXNLEVEL( )

Возвращает номер текущего уровня транзакции

Связывание таблиц

RELATION( )

Возвращает строку, содержащую выражение связи для родительской таблицы

SET RELATION

Устанавливает связь между двумя открытыми таблицами – родительской и дочерней

SET RELATION OFF

Разрывает связь родительской таблицы с дочерней

SET SKIP

Создает связь 1:М между таблицами

TARGET( )

Возвращает строку, содержащую псевдоним дочерней таблицы

Просмотр и редактирование таблиц

BROWSE | CHANGE | EDIT

Открывает окно просмотра и редактирования текущей таблицы

DISPLAY | LIST

Выводит сведения о записях текущей таблицы

DISPLAY | LIST
                STRUCTURE

Выводит данные о структуре таблицы и ее индексах

DISPLAY | LIST
                TABLES

Выводит данные обо всех таблицах

SET NOTIFY

Включает или отключает режим вывода некоторых системных сообщений

SET REFRESH

Определяет, как часто обновляется Browse-окно, открытые окна редактирования его memo-полей и локальные буферы памяти

SET RESOURCE

Обновляет или задает файл ресурсов. По умолчанию имя файла ресурсов – FoxUser.dbf

SET STATUS BAR

Отображает или скрывает графическую строку состояний

SYS(2005)

Возвращает имя текущего файла ресурсов

Выбор данных

SELECT – SQL

Выбирает данные из одной или нескольких таблиц

SET ANSI

Определяет, как выполняется сравнение строк или двоичных данных разной длины операцией "=" в SQL-командах VFP

SET DELETED

Определяет, будет ли VFP обрабатывать записи с пометкой удаления или нет

SET ENGINEBEHAVIOR

Обеспечивает совместимость исполнителя SQL-запроса с версиями 7.0, 8.0 и 9.0

SET SQLBUFFERING

Указывает, будет ли команда SELECT – SQL использовать данные, имеющиеся в локальном буфере, или будет брать их с диска

SET VARCHARMAPPING

Задает тип данных символьного выражения в результате запроса и вычисляемого поля

SYS(3054)

Включает или отключает отображение уровней рашмор-оптимизации запросов

SYS(3099)

Выполняет то же, что и SET ENGINEBEHAVIOR