В Visual FoxPro может осуществляться автоматическая или ручная блокировка данных. При использовании определенных команд FoxPro попытается автоматически заблокировать записи или всю таблицу (табл. 20.1).
Таблица 20.1. Команды, автоматически блокирующие таблицу или записи
Команда | Что блокируется |
ALTER TABLE | Вся таблица |
APPEND | Вся таблица |
APPEND BLANK | Заголовок таблицы |
APPEND FROM | Вся таблица |
APPEND FROM ARRAY | Заголовок таблицы |
APPEND MEMO | Текущая запись |
BLANK | Текущая запись |
BROWSE | Текущая запись и все записи из одноименных полей в связанных таблицах |
CHANGE | Текущая запись и все записи из одноименных полей в связанных таблицах |
DELETE | Текущая запись |
DELETE NEXT 1 | Текущая запись |
DELETE <n> | Если п больше 1, автоматически блокируется вся таблица |
DELETE RECORD <n> | Автоматически блокирует п записей |
DELETE SQL | Текущая запись |
EDIT | Текущая запись и все записи из одноименных полей в связанных таблицах |
GATHER | Текущая запись |
INSERT | Вся таблица |
INSERT SQL | Заголовок таблицы |
MODIFY MEMO | Когда начинается редактирование записи, автоматически блокирует ее |
READ | Текущая запись |
RECALL | Текущая запись |
RECALL NEXT 1 | Автоматически блокирует указанную запись |
RECALL RECORD <n> | Блокирует п записей |
RECALL <n> | Если п больше 1, автоматически блокируется вся таблица |
REPLACE | Текущая запись |
REPLACE NEXT 1 | Автоматически блокирует указанную запись |
REPLACE RECORD <n> | Блокирует п записей |
SHOW GETS | Текущая запись |
TABLEUPDATE() | Вся таблица |
UPDATE | Вся таблица |
UPDATE SQL | Вся таблица |
Замечание
Все команды с автоматической блокировкой снимают ее после выполнения.