Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций ИТС ПС.doc
Скачиваний:
36
Добавлен:
16.04.2019
Размер:
4.42 Mб
Скачать

3.2 Субд foxpro

3.2.1 Знакомство с субд foxpro

Работа в среде FoxPro выполняется в одном из следующих режимов:

- непосредственная интерпретация команд;

- меню - ориентированный режим;

выполнение программ.

При работе в первом режиме пользователь вводит текст команды в командном окне. Среда осуществляет синтаксический контроль и выполняет команду. Некоторые команды в процессе выполнения проводят собственный диалог с пользователем, другие могут выдавать лишь краткие сообщения об итогах работы. Второй режим предназначен для начинающего пользователя, который не освоил еще языка команд. Наконец, режим выполнения программ подразумевает, что пользователь будет писать программы, используя язык команд xBase, дополненный специальными командами программирования. Весь цикл по написанию, отладке и выполнению программ можно осуществлять в среде системы.

FOXPRO – это СУБ реляционными данными. Каждое отношение (таблица) хранится в отдельном файле с расширением .dbf и имеет уникальное имя размером до 10 символов.

Внешний вид программы представляет собой стандартную интерфейс Windows- приложения и состоит из таких частей: меню, панель инструментов, рабочая область, строка состояния.

А так же окно с названием «Команды» отображает команды введенные пользователем путем выбора соответствующих меню.

Окно «Вид» - используется для работы с БД (рисунок 12).

В данном диалоговом окне можно одновременно работать с несколькими базами данных, открыв их в различных рабочих областях и перемещаясь по ним с помощью мыши.

Рисунок 12 – Диалоговое окно «Вид»

3.2.2 Проектирование базы данных

Проектирование структуры, т.е. определение входящих в запись полей, их типа, размера, вхождения в индексы, а также связей между базами, выполняется обычно один единствен­ный раз вначале (до заполнения). Возможно внесение изменений в структуру заполненной базы данных. Однако при этом следует учитывать, что вновь введенные поля окажутся незаполненными, информация из удаленных полей будет утеряна, а в измененных полях — трансформирована по имени или типу данных. Проекти­рование отдельных объектов, используемых для обслуживания базы (индексы, экранные формы, запросы, отчеты и т.д.), может выпол­няться и на заполненной базе: эти объекты не меняют структуру базы, а только используют ее.

Спроектированная база заполняется. Дополнение базы данными выполняется многократно (например, база данных торговых опера­ций пополняется ежедневно несколько раз), и содержащиеся в ней данные анализируются.

В FoxPro термины "таблица" (или "таблица базы данных") и "база данных" означают одно и то же, так как FoxPro создает для каждой таблицы собственный файл. Другие системы управ­ления базами данных, например MS Access, объединяют не­сколько таблиц в одну базу данных: в таких системах следует различать эти термины.

Для создания новой таблицы следует выбрать директиву New из File-меню (Table/DBF). В появившемся диалоговом окне «Структура таблицы» необходимо указать:

- имена полей,

- типы полей,

- размеры полей,

- возможные индексы

Имя базы данных может содержать не более десяти символов и должно начинаться с буквы. В имени разрешено использовать малые латинские буквы от a до z, все цифры, а также символ подчеркивания "_", а при использовании русифицированной версии FoxPro, можно использовать и буквы русского алфавита.

Тип данных определяет, какие данные можно хранить в поле (числа, тексты и т.д.) и каков их предельный размер. В FoxPro предусмотрены следующие типы данных.

Текстовые поля (тип данных Character)

содержат произвольный текст, составленный из букв, цифр и специальных символов (",", ".", "/" и т.д.). В таких полях можно хранить, например, фамилии, названия фирм, числа, не подлежащие арифметической обработке (например, почтовый индекс, номер телефона).

Числовые поля (тип данных Numeric)

содержат числа с фиксированной запятой, над которыми можно выполнять арифметические операции, сравнивать их и т.п. Речь идет, например, о ценах изделий.

Поля с плавающей запятой (тип данных Float)

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

Поля даты (тип данных Date) содержат данные о дате и времени.

Логические поля (тип данных Logical)

используются для хранения величин, которые могут принимать только одно из двух значений: "истина" или "ложь" (Yes/No).

Поля примечаний (тип данных Memo)

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

Поля объектов (тип данных General)

содержат объекты, связанные или встроенные посредством OLE (Object Linking and Embedding), например, иллюстрации или диаграммы.

При определении размера поля соблюдайте следующее правило: каждое поле должно быть настолько длинным, насколько это необходимо, и настолько коротким, насколько возможно. Слишком длинные поля неоправданно расходуют память; а слишком короткие не позволяют вместить требуемые сведения.

Пример: Предположим, что имеется база данных, в которой находятся адреса клиентов. Выбирая размер поля FirmaName (На­звание фирмы), следует всегда ориентироваться (если это воз­можно) на самое длинное название фирмы, которое вообще существует, чтобы даже это длинное название смогло уместиться целиком в поле и не оказалось обрезанным.

С другой стороны, следует следить за тем, чтобы не установить размер поля слишком большим. Если принять длину поля равной 80 символов, хотя самое длинное встречающееся имя содержит всего лишь 45 символов, то система будет резервировать для каждой записи на 35 байт больше, чем это действительно нужно.