![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Лекция № 6. Основные компоненты, входящие в состав приложений VFP
Основные компоненты, входящие в состав приложений VFP Приложение на VFP состоит из следующих компонентов: - все описание приложения храниться в специальном файле проекта (расширение PJX)
В VFP принципиально изменена система организации данных. Теперь она приблизилась к теоретическим основам реляционной модели и позволяет более естественно выполнять операции реляционной алгебры. Основная единица хранения данных — это таблица, в столбцах и строках которой содержатся данные, как это и было раньше в dbf-файле. Таблица сохранила расширение файла dbf и имеет прямую совместимость со “старыми” dbf-файлами. Таблицы объединяются в базу данных (БД), в которой можно описать все связи, устанавливаемые между полями отдельных таблиц, правила проверки, определяющие реакцию системы на вносимые изменения, добавление или удаление данных и правила проверки целостности данных в БД. Файлы баз данных имеют расширение dbc и при открытии автоматически поддерживают все перечисленные установки для входящих в нее таблиц. При необходимости мы можем создать и таблицы, не входящие в БД, — свободные таблицы. VFP5 обеспечивает поддержку значений NULL и выполнение операций с этими данными в соответствии со стандартом ANSI. Это облегчает задачу представления неизвестных данных и взаимодействие с базами данных SQL, которые могут содержать такие типы значений. Для таблиц, входящих в БД, могут быть созданы следующие типы индексов, первые два из которых в FoxPro появились впервые: • Первичный (Primary) — обеспечивает наличие только уникальных данных в поле, по которому построен. В таблице может быть только один первичный индекс. • Кандидат (Candidate) — аналогичен первичному, но позволяет иметь несколько индексов этого типа для одной таблицы независимо от того, включена она в БД или нет. • Регулярный (Regular) — обычный тип индекса, поддерживаемый в предыдущих версиях. • Уникальный (Uniq) — при наличии одинаковых значении в поле, при активизации этого индекса обеспечивается вывод только уникальных значений. Этот тип индекса включен для поддержки совместимости.
Таким образом, база данных в VFP — это основной элемент организации данных, который помимо формирования структуры представления информации выполняет функции словаря данных за счет поддержки следующих функциональных возможностей: • допускаются длинные имена таблиц; • каждому полю и таблице можно давать комментарии; • позволяется задавать длинные имена полей; • для полей помимо идентификаторов появились заголовки, которые могут использоваться как в окне Browse, так и в качестве заголовков для колонок в объекте Grid; • введены значения по умолчанию для полей; • добавлены два новых типа индексов: первичный и кандидат; • предусмотрены правила проверки для полей и записей при изменении и вводе новых данных; • имеются триггеры для поддержания целостности данных; • поддерживаются постоянные связи между таблицами, размещенными в БД; • имеются процедуры БД для описания сложных условий правил проверки; • появились соединения с внешними источниками данных; • поддерживаются локальные и внешние просмотры.
Все объекты хранятся в таблицах(за исключением файлов PRG и TXT)
Контейнерный файл БД (DBC) – содержит информацию о всех остальных таблицах входящих в БД. (Словарь БД) А также о различных ограничениях, значениях по умолчанию, триггерах, Индексах, связях между таблицами, и тд.
Интерфейс управляемый событиями.
Основные элементы языка программирования Visual FoxPro. - типы данных; - переменные и массивы; -рабочие области; -операторы поиска и перемещения по записям; -операторы циклов; -управляющие операторы;
Аналогично многим языкам высокого уровня язык Visual Foxpro работает с переменными некоторого фиксированного набора типов. Т.К. основная цель языка VSFP - обработка данных из таблиц то, соответственно, и типы переменных совпадают с возможными типами полей в таблицах VFP. Имена полей могут содержать до 254 символов, но не должны содержать пробелы, не могут начинаться с цифры и включать специальные символы кроме символов подчеркивания. Поля могут быть следующих типов:
Переменные в VSFP не являюся жестко типизованными - тип переменной определяется последним присвоенным значением. Переменные создаются либо описанием операторами Public, Private, либо оператором присваивания. В VSFP разрешается работа с одномерными и двумерными массивами переменных. Для этого они должны быть описаны специальной командой: DECLARE/DIMENSION < переменная> (< вырN1> [, < N2> ]) [, < переменная> (< вырN1> [, < N2> ])] Нумерация элементов массива начинается с 1. Сразу после описания все элементы массива получают тип LOGICAL и значение.F. Тип каждого отдельного элемента определяется результатом последней операции присваивания. Разрешается повторное описание существующего массива без потери имеющихся данных. При обращении к элементам массива разрешено использовать круглые или квадратные скобки.
VSFP Может одновременно работать с большим количеством таблиц. Каждая таблица открывается в так называемой рабочей области, открывая новую таблицу Вы либо выбираете определенную рабочую область командой SELECT, либо таблица будет открыта в текущей рабочей области. Всего VSFP имеет 32767 рабочих областей. При запуске по умолчанию активизируется рабочая область 1. Таблица в текущей области открывается командой: USE < имя таблицы>. Открытие таблицы в конкретной области: USE < имя таблицы> IN < номер рабочей области>. Открытие таблицы в свободной области с наименьшим номером: USE < имя таблицы> IN 0. Открытой таблице VSFP назначает псевдоним (Alias) - имя длиной до 10 символов, служащее для ссылок на эту таблицу: USE < имя таблицы> IN 0 ALIAS < псевдоним>.
Дополнение: Над переменными и полями таблиц могут выполняться следующие операции: Математические (перечислены в порядке приоритетов): ** или ^ - возведение в степень; * - умножение, / - деление; + - сложение, - -вычитание; Логические (в порядке приоритетов): NOT - НЕ(другая форма -!); AND - логическое И; OR - логическое ИЛИ; Знаки логических операций (кроме!) окаймляются точками или пробелами. Отношения: < - меньше, > - больше, = - равно, # - не равно, < = - не больше, > = - не меньше. Знаки отношения применимы как к числовым выражениям, так и к датам и символьным выражениям. Если сравниваются символьные строки разной длины, сравнение выполняется по длине второго выражения; Остаток левого операнда, превышающий длину правого операнда, игнорируется. Существуют операции отношения только для символьных выражений: $ - сравнение символьных строк. Операция A$B даст значение.T. если A идентично B, либо A входит в B, и.F. в противном случае. == - сравнение на полное тождество символьных строк и по длине, и по содержанию, включая пробелы. Сцепления: + - соединение двух или более строк в одну; - то же, но пробелы в конце первой строки помещаются в конец итоговой строки;
|