Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
задания практика 3 часть консоль БД MySQLпо ПР ТРЗБД_.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.64 Mб
Скачать

Контрольные вопросы

  1. Продемонстрируйте процесс связывания "Один-ко-многим". Продемонстрируйте процесс связывания "Один-к-одному".

  2. Продемонстрируйте процесс установки автоинкремента.

  3. Продемонстрируйте процесс установки первичного ключа.

  4. Продемонстрируйте процесс установки ненулевеого значения колонки таблицы.

  5. Продемонстрируйте процесс экспорта скрипта SQL.

Лабораторная работа № 7

Тема: «Разработка клиентской части приложения в C++ Builder. Настройка приложения клиента для работы с удалённой базой данных».

Цель работы: Научиться разрабатывать клиентскую часть приложения для работы с базой данных.

Время выполнения: подготовка: 3 мин; выполнение: 167 мин; проверка: 10 мин; всего: 180 мин.

Указания по выполнению лабораторной работы

Перед выполнением данной работы сделаем базу данных “Студенты” в СУБД Access.

Заполните базу данных данными.

Для того, чтобы связать базу Access и С++Builder нам потребуется три компонента, и выносим их на форму.

  1. ADOConnection1

  2. DataSource1

  3. ADOQuery1

Для компонента adoConnection1 устанавливаем следующие свойства

Connected – try

LoginPrompt– false

ConnectionString – нажимаем на свойство, откроется окно

После чего нажимаем build…

Откроется окно

  1. Щелкните на “…” и находим нужную базу данных.

  2. По необходимости можно указать пароль.

Provider - выбираем Microsoft.Jet.OLEDB.4.0

Для компонента DataSource1 устанавливаем следующие свойства: находим DataSet, в списке выбираем ADOQuery1.

Для компонента ADOQuery1 устанавливаем следующие свойства.

SQL – Открываем и пишем запрос:

SELECT *

FROM Студенты;

Active – tru.

Connection – выбираем ADOConnection1.

Для того, чтобы вывести нашу базу потребуется компонент TDBGrid. Выносим его на форму.

Для компонента TDBGrid находим свойство DataSource, и выбираем DataSource1.

Если все было сделано, верно, выйдет такой результат:

Контрольные вопросы

  1. Назовите компонент, с помощью которого устанавливается связь между базой данных и клиентским приложением

  2. Какие свойства необходимо заполнить у компонента ADOQuery?

  3. Для чего служит компонент DataSource?

  4. Какое свойство компонента TDBGrid надо установить, чтобы в нем появились данные?

  5. Без какого свойства компонента ADOQuery данные не будут выведены в TDBGrid?

Практическая работа № 8

Тема: «Построение запросов на выборку с использованием сравнения и условий в выборках и исключение дубликатов».

Цель работы: Научиться писать запросы на выборку.

Время выполнения: подготовка: 5 мин; выполнение: 210 мин; проверка: 10 мин; всего: 225 мин.

Указания к выполнению лабораторной работы

Команда SELECT

Команда SELECT является ключевой командой языка SQL. Собственно с нее и начинался язык SQL. Команда позволяет осуществлять выборки данных из одной или нескольких соединенных по условию таблиц. Команда имеет довольно сложный синтаксис.

SELECT

[ALL | DISTINCT | DISTINCTROW ]

[FROM СсылкиНаТаблицы

[WHERE Условие]

[GROUP BY {ИмяАтрибута | Выражение | Позиция}

[HAVING Условие]

[ORDER BY { ИмяАтрибута | Выражение | Позиция }

[LIMIT пределы];

Или:

SELECT ...

UNION [ALL | DISTINCT] SELECT ...

[UNION [ALL | DISTINCT] SELECT ...]

СсылкиНаТаблицы:

СсылкиНаТаблицы [,СсылкиНаТаблицы] ...

СсылкиНаТаблицы:

ОписаниеТаблицы

| СоединениеТаблиц

ОписаниеТаблицы:

ИмяТаблицы [[AS] Алиас]

| (СсылкиНаТаблицы)

| { OJ СсылкиНаТаблицы LEFT OUTER JOIN

СсылкиНаТаблицы

ON УсловиеСоединения }

СоединениеТаблиц:

СсылкиНаТаблицы [INNER] JOIN ОписаниеТаблицы

[УсловиеСоединения]

| СсылкиНаТаблицы {LEFT|RIGHT} [OUTER] JOIN

СсылкиНаТаблицы УсловиеСоединения

ALL – означает, что результирующий набор данных будет содержать все записи, в том числе и одинаковые.

DISTINCT или DISTINCTROW – это синонимы, которые означают, что результирующая выборка будет содержать только разные записи.

FROM – задает список таблиц, из которых выбираются данные.

WHERE – задает условие выборки данных из таблиц, а также условие соединения таблиц.

GROUP BY – задает поле(поля), по которому данные объединяются в группы для подведения итогов.

HAVING – задает условие, накладываемое на группы.

ORDER BY – задает поле(поля), которым выполняется сортировка данных в результирующей выборке.

UNION – используется для выполнения операции объединения таблиц.

INNER JOIN – задает внутреннее соединение таблиц по условию.

{LEFT|RIGHT} OUTER JOIN – задает внешнее(левое или правое) соединение таблиц по условию.

AS – при описании таблиц позволяет задать второе имя для таблицы(алиас). Алиасы удобно использовать при описании списка столбцов в выборке, помечая каждый столбец алиасом той таблицы, из которой он выбирается.

Рассмотрим использование оператора SELECT на примере выборок из следующих таблиц:

Таблица «Темы» содержит информацию о темах, к которым относится та или иная книга. Имеет следующую структуру:

Tem(*N_t(номер темы), Nazv_t(название темы))

Таблица «Книги» содерит информацию о книгах, имеющихся в библиотеке. Имеет следующую структуру:

Books(*N_b(номер книги), Nazv(название), Avtor(автор),

Cena(цена), God_izd(год издания), N_tem(номер темы))

Таблица «Читатели» содержит информацию о читателях библиотеки. Имеет следующую структуру:

Readers(*N_r(номер читателя), Fio(ФИО), Adres(Адрес), Tel(телефон), Pol(пол))

Таблица «Регистрация выдачи и возврата книг» содержит информацию о том кому какие книги выдавались. Имеет следующую структуру:

Registr(*N_b(номер книги), *N_r(номер читателя), *Data_v(Дата выдачи), Priznak(признак возврата)).

Первичные ключи в таблицах отмечены «звездочками»(*).