Перманентно удаляет все записи помеченные на удаление в текущей таблице и уменшает размер таблицы и мемо файла (.fpt) связанного с таблицей.

NoteNote

перед использованием команды PACK вы должны открыть таблицу эксклюзивно.

PACK [MEMO | DBF] [Tablename ] [IN nWorkarea | cTableAlias]

Параметры

MEMO

Удаляет неиспользованное пространство из мемо файла но не удаляет записи, отмеченные на удаления из таблицы. Информация в мемо полях сохраняется в связанной таблицы мемо файле (.fpt), с тем же именем что и таблица.

DBF

Удаляет записи, отмеченные на удаления из таблицы, но не затрагивает мемо файл.

Tablename

Определяет таблицу для выполнения команды PACK. Visual FoxPro открывает заданую таблицу, пакует, и закрывает ее.

IN nWorkArea | cTableAlias

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

Expand imageЗамечания

Когда вы используете команду PACK, Microsoft Visual FoxPro копирует все записи не помеченные на удаление во временную таблицу. После окончания выполнения команды PACK, Visual FoxPro удаляет оригинальную таблицу с диска и переименовывает временную таблицу с именем оригинальной. Если вы нажмете клавишу ESC для отмены команды PACK, временная таблица удаляется, а оригинальная остается без изменений. Оригинальная таблица также востанавливается если заканчивается дисковое пространство во время выполнения команды PACK.

Когда вы выдаете команду PACK без вЫражений MEMO и DBF, PACK затрагивает и таблицу и мемо файл.

PACK требует эксклюзивного доступа к таблице. Для получения дополнительной информации об открытии таблицы эксклюзивно в сети, смотрите Команда SET EXCLUSIVE.

Если текущая таблица имеет один или более открытых индексов, PACK перестраивает индексные файлы.

Caution noteВнимание

Будте осторожны помечайте только те записи которые вам больше не нужны. после использывания команды PACK нету средств для востановления удаленных записей.

Если вы опуститк выражение IN, PACK работает в текущей рабочей области.

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

Если нету записей помеченных на удаление, PACK не изменяет таблицу или ее индекс.

Expand imageСмотрите также