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

Пометка записей на удаление при работе с таблицей через BROWSE происходитпри щелчке мышью в поле слева от полей записи. При установке пометки полеокрасится в другой цвет (обычно в черный). Чтобы снять пометку, надо ещераз щелкнуть в этом поле. Установка пометки на удаление еще не значит, чтозапись удаляется физически из таблицы. Еще есть время подумать.

Второй способ пометки записей на удаление - команда DELETE, вводимая вокне Command.

>    <Диапазон> - если не используется FOR или WHILE и указать ALL, то будутпомечены на удаление все записи;

>    <Условие1> - удаляются только записи, которые удовлетворяют условию.Можно использовать функции и операции сравнения;

>    <Условие2> - записи удаляются, пока выполняется условие;

>    <Рабочая_область> | <Имя_таблицы> - указывается таблица или рабочая область, где производится удаление.

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

Можно выполнить и обратную операцию и снять пометку на удаление. Дляэтого существует команда RECALL.

>    <Диапазон> - если не используется FOR или WHILE и указать ALL, то будутсняты пометки на удаление со всех записей;

>    <Условие1> - снимаются пометки на удаление только с записей, которыеудовлетворяют условию. Можно использовать функции и операции сравнения;

>    <Условие2> - пометки на удаление снимаются с записей, пока выполняется условие;

>    <Рабочая_область> I <Имя_таблицы> - указывается таблица или рабочаяобласть, где производится снятие пометок на удаление.

Таким образом, например, для снятия пометок на удаление со всех записейиспользуется команда RECALL ALL.

Если с удалением записей решено окончательно и бесповоротно, то следуетупаковать таблицу командой PACK в окне Command.

>    MEMO - удаляет неиспользуемые пробелы в тето-полях, не удаляя приэтом записи;

>    DBF - удаляет помеченные на удаление записи, не затрагивая при этомmemo-файл.

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

Чтобы команда PACK успешно выполнилась, таблица должна быть открыта вэксклюзивном режиме. Если для открытия таблицы вы пользовались командойUSE, следует указать параметр EXCLUSIVE. Если открытие таблицы происходитпри помощи диалогового окна, следует установить флажок Open exclusive.

Для создания таблиц из нашего примера (списки сотрудников и их должностей) предпримем следующие действия:

1. Создайте отдельную папку example. В ней будем хранить созданные намитаблицы и индексные файлы.

2.    Выберите из меню File (Файл) команду New (Новый).

3.    В появившемся окне выберите Table (Таблица) и щелкните по кнопкеNew file (Новый файл).

4.    В появившемся окне Create (Создание) перейдите в созданную вами панку example и в поле Enter table паше (Введите имя таблицы) введитеpersons (так мы назовем таблицу с информацией о сотрудниках).

5.    В появившемся окне Table Designer (Дизайнер таблиц) введите поля иих характеристики из табл. 2.3. Должно получиться так же, как это показано на рис. 2.7.

6.    Щелкните по кнопке ОК.

7.    Щелкните мышью в окне Command, введите в нем команду BROWSE инажмите Enter. На экране появится окно, в заголовке которого будетуказано имя только что созданной вами таблицы - persons.

8.    Таблица пуста. Чтобы ее заполнить, выберите из меню Table (Таблица)команду Append New Record (Добавить новую запись) или нажмите комбинацию клавиш Ctrl+Y. В таблице появится новая пустая запись. Есливы не видите в меню пункта Table (Таблица), щелкните в любом местеокна с таблицей, чтобы оно стало активным.

9.    Щелкните мышью в первом поле новой записи и введите значение поля,взяв его из табл. 2.1. Перейдите к следующему полю текущей записи, нажав Enter или Tab. Введите его значение и переместитесь на следующееполе и так далее, пока не заполните всю запись.

10.    Добавьте новую запись, как указано в п.7. Заполните все ее поля данными из табл. 2.1. Продолжайте добавлять строки и вводить данные, покане введете всю информацию, приведенную в табл. 2.1. Должно получиться, как на рис. 2.8.

11.    По окончании ввода щелкните мышью в окне Command, введите в немкоманду USE.

Этим действием вы закроете окно с записями созданной вами таблицы изакроете саму таблицу (разорвете с ней связь).

12.    Выполните действия пунктов 2-11 для создания и заполнения второйтаблицы со списком должностей. Задайте для нее имя stuff. Используйтесведения табл. 2.2 и 2.4.

Как создавать таблицы, мы обсудили. Однако Visual FoxPro 9 предоставляетвозможность создавать полноценную базу данных, а не только набор таблиц,как это было, например, в FoxPro для MS DOS. В понятие «полноценная» включается возможность создания представления таблиц, в том числе удаленных, ихранимых процедур.

Создание базы данных

Создается база данных тем же путем, что и другие объекты Visual FoxPro 9, -при помощи команды New (Новый) из меню File (Файл). Либо можно щелкнутьпо кнопке Q. Появится диалоговое окно, представленное на рис. 2.6.

В области File type (Тип файла) следует установить переключатель в положение Database (База данных). Затем нужно щелкнуть по кнопке New file (Новый файл). В результате откроется стандартное окно Create (Создание) длясоздания файла. В поле Enter database (Введите имя базы данных) следует ввести имя базы данных. Файл базы данных будет сохранен в указанной вами папке, в файле с расширением .dbc. После щелчка мышью по кнопке Сохранить(Save) появится окно, представленное на рис. 2.9.

-Это окно Дизайнера базы данных. При помощи инструментов этого окнаможно добавлять, изменять и удалять таблицы, устанавливать связи междуними, редактировать хранимые процедуры. Рассмотрим панель инструментовДизайнера базы данных.

Рассмотрим подробнее, как создавать представления. И при создании локального представления, и при создании удаленного представления открывается окно для выбора способа создания: при помощи Мастера представлений иливручную.

В первом случае (при помощи Мастера представлений) надо щелкнуть мышью по кнопке View Wizard (Мастера представлений). Далее рассмотрим отдельно случай для удаленного представления и для локального представления.