Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
5 семестр - ИПОВС / БД / БД / МП лаб / МПлаб1(2012).doc
Скачиваний:
58
Добавлен:
31.12.2017
Размер:
2.7 Mб
Скачать

Структура таблицы items.Db (Заказанные изделия)

№ п/п

Поле

Тип

Размер

Первичный ключ

Назначение

1

OrderNo

N

*

Номер заказа

2

ItemsNo

N

*

Номер изделия в заказе

3

PartNo

N

Номер поставки партии изделий

4

Qty

I

Количество заказанных изделий

5

Discount

N

Скидка

Таблица 6

Структура таблицы parts.Db (Поставки партий изделий)

№ п/п

Поле

Тип

Размер

Первичный ключ

Назначение

1

PartNo

N

*

Номер поставки партии изделий

2

VendorNo

N

Номер поставщика

3

Description

A

30

Описание изделия

4

OnHand

N

Количество изделий в наличии

5

OnOrder

N

Количество заказанных изделий

6

Cost

$

Стоимость одного изделия

7

ListPrice

$

Цена одного изделия

Таблица 7

Структура таблицы vendors.Db (Поставщики)

№ п/п

Поле

Тип

Размер

Первичный ключ

Назначение

1

VendorNo

N

*

Номер поставщика

2

VendorName

A

30

Название компании-поставщика

3

Address1

A

30

Адрес 1

4

Address2

A

30

Адрес 2

5

City

A

20

Город

6

State

A

20

Штат

7

Zip

A

10

Почтовый индекс

8

Country

A

20

Страна

9

Phone

A

15

Номер телефона

10

FAX

A

15

Номер факса

11

Preferred

L

Имеет предпочтение

На схеме, приведенной на рис.2, линии, обозначающие связи таблиц, помечены цифрой 1 со стороны главной таблицы и символом со стороны подчиненной таблицы.

Рис.2. Взаимосвязь таблиц в базе данных

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

Рис.3. Схема взаимосвязи таблиц в базе данных

Для изменения структуры таблицы в соответствии с изменением описания полей таблицы предусмотрена команда Restructure, а для изменения имени таблицы служит команда Rename.. Если таблица содержит данные, то эти данные преобразуются согласно сделанным изменениям описания полей, причем преобразование может привести к частичной потере данных.

Редактирование таблицы. Режим редактирования устанавливается командой Table|Edit Data или кнопкой Edit Data, а режим просмотра - командой Table|View Data.

Изменяемое поле выделяется щелчком мыши. Чтобы сделать выделенное поле доступным для изменения, следует еще раз щелкнуть мышью в этом поле. Изменения, сделанные в строке, сохраняются при переходе к другой строке. Отменить изменения можно до перехода к другой строке командой Edit|Undo.

Использование QBE-запросов для выборки данных из таблицы. Чтобы задать QBE-запрос (запрос по образцу), нужно выбрать команду File|New или File|Open и затем команду QBE Query или нажать кнопку Open Query.

Формирование запроса начинается с выбора таблиц, для которых предназначен запрос. Далее в окне Query (рис.4) задаются отметки (галочки) для указания полей, включаемых в таблицу ответов ANSWER. Для сужения области действия запроса в его полях указываются условия, которым должны соответствовать выбираемые данные.

Рис.4. Окно QBE-запроса

Когда запрос сформирован, можно выполнить его нажатием клавиши F8, кнопки Run Query на инструментальной панели или командой меню Query|Run Query. DBD обрабатывает запрос и отображает результаты в таблице ANSWER.

Большинству запросов по образцу соответствует запрос на языке SQL, который можно увидеть в окне SQL Editor, нажав кнопку Show SQL на инструментальной панели. При закрытии окна выдается запрос на сохранение SQL-запроса в файле.

Использование отметок. Чтобы включить конкретное поле в таблицу ответов, нужно в окне Query щелчком мыши поставить отметку (галочку) в этом поле. Если установить курсор мыши на маленьком окошке в интересующем поле и нажать правую кнопку мыши, то появится список возможных отметок:

  • выбор неповторяющихся строк и сортировка в порядке возрастания;

  • отмена выбора;

  • выбор всех строк без сортировки;

  • выбор неповторяющихся строк и сортировка в порядке убывания.

Использование условий. Чтобы выбрать из таблицы строки с данными, удовлетворяющими некоторым условиям, нужно в запросе для отдельных полей справа от окошка записать условие, относящееся к этому полю (см. рис.4). Для полей, содержащих текстовую информацию, можно использовать шаблоны, в которых символ @ обозначает любой один символ, а две подряд идущие точки (..) - любую последовательность символов.

Условия можно записывать с использованием знаков сравнения (<, >, =, <>, <=, >=) и логических операций “И” и “ИЛИ”, обозначаемых соответственно запятой “,” и словом OR.

Вычисление и изменение значений полей. Значение поля вычисляется с помощью оператора CALC, записываемого в поле справа от окошка. Форма оператора CALC COUNT используется для подсчета количества значений в столбце. Вычисляемое выражение может содержать элемент образца (example element) - переменную, принимающую текущее значение поля данных. Элемент образца обозначается именем, перед которым набирается символ подчеркивания или нажимается клавиша F5 (символ подчеркивания не отображается, а элемент образца выделяется красным цветом). Элемент образца и оператор CALC разделяются запятой, например: _a , CALC _a+2.

Для изменения значения поля предназначен оператор CHANGETO. При использовании этого оператора все поля должны быть неотмеченными.

Вставка и удаление строк (записей). Для выполнения этих действий нужно нажать правую кнопку мыши, когда курсор установлен в первой колонке запроса под именем таблицы, и из появившегося меню выбрать команду INSERT или DELETE.

Для INSERT в окне Query следует набирать значения полей вставляемой строки и нажать кнопку Run Query.

Для DELETE в окне Query нужно задать условия, которым должны удовлетворять значения полей удаляемых строк, и нажать кнопку Run Query. Удаленные строки помещаются в таблицу DELETED.DB, расположенную в личном каталоге PRIV.

При использовании команд INSERT или DELETE все поля должны быть неотмеченными.

Соединение таблиц. Можно задать запрос для нескольких связанных таблиц. Для этого предварительно таблицы нужно соединить по полям, содержащим однородную информацию и обычно являющимся первичным ключом в главной таблице и внешним ключом в подчиненной таблице. Например, чтобы задать запрос для двух таблиц CUSTOMER и ORDERS, следует:

1) сформировать QBE-запрос, выбрав таблицу CUSTOMER;

2) добавить в QBE-запрос таблицу ORDERS, нажав на инструментальной панели кнопку Add Table (пиктограмма таблицы с зеленым плюсом);

3) соединить таблицы CUSTOMER и ORDERS по полю CustNo (номер покупателя), нажав кнопку Join Tables (пиктограмма из двух перекрывающихся таблиц) для задания операции соединения таблиц и щелкнув мышью на поле CustNo в главной таблице CUSTOMER, а затем на поле CustNo в подчиненной таблице ORDERS. В каждом из полей появится выделенный красным цветом элемент образца join1.

После соединения таблиц можно ставить отметки в полях любой таблицы.

Сортировка таблицы ответов ANSWER. Для формируемой таблицы ответов может быть задана сортировка нажатием кнопки Sort Answer Table. В появившемся диалоговом окне необходимо выбрать поля, по которым следует сортировать таблицу, и затем закрыть окно нажатием кнопки ОК. Для выполнения сортировки нужно нажать кнопку Run Query на инструментальной панели.

Соседние файлы в папке МП лаб