Лабораторный практикум по курсу “Базы данных” (Лабораторный практикум)
Описание файла
PDF-файл из архива "Лабораторный практикум", который расположен в категории "". Всё это находится в предмете "базы данных" из 4 семестр, которые можно найти в файловом архиве НИУ «МЭИ» . Не смотря на прямую связь этого архива с НИУ «МЭИ» , его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст из PDF
УДКУДКУтверждено учебным управлением МЭИРецензент: к.т.н., доцент Зубов В.С.Подготовлено на кафедре прикладной математикиЛабораторный практикум по курсу “Базы данных”. Федин В.А., Бурцев А.П.,Мотина Н.А., Рогова Н.Г. – М.: Изд-во МЭИ, 2002. – с.______________ Московский Энергетический институт, 2002 г.3ЛАБОРАТОРНАЯ РАБОТА № 1Цель:1. Приобрести практический навык в создании таблиц БД и загрузки ихданными.2. Освоить создание индексов.Справочный материал:1. Конспект курса.Используемые технические средства:1.
SQL-сервер, работающий на компьютере Pentium II под управлениемоперационной системы Windows 2000 Advanced Server.2. SQL Query Analyser, работающий на компьютере Pentium под управлениемоперационной системы Windows 2000 Professional.Упражнения:Сценарий входа в систему:I Вход в сеть.После загрузки системы WINDOWS 2000 перед пользователемвысветится окно с названием “Вход в Windows”.В этом окне необходимоввести логин и пароль работы с сетью (их необходимо получить упреподавателя). В результате этого на экране появится набор пиктограммразличных WINDOWS-приложений.II Вход в систему MS SQL Server и диалоговой SQL:Нажать кнопку “Пуск” и в появившемся меню выбрать пункт“Программы”; при этом появится следующее меню, в котором необходимонайти пункт с названием “Microsoft SQL Server” и выбрать его; в результатеэтого появляется третье меню (см.
рис. 1).В этом меню необходимо найти пункт с названием программы “SQLQuery Analyser” и выполнить на нем один щелчок мыши.III Установка связи пользователя с базой данных:На экране появится диалоговое окно Connect to SQL Server.В этом окне пользователю нужно ввести:1. Имя сервера (M708-SQL - выбрать из списка имен серверов и щелкнутьлевой кнопкой мыши).2. Имя пользователя (например: STUD1 [Tab]);3. Пароль (например: stud1 [Tab]); (см. рис. 2)4Рис.
1Рис. 2Для перехода к вводу следующего имени или пароля используетсяклавиша Tab. Если все имена и пароль введены правильно, то пользовательполучает доступ к основному окну Microsoft SQL Server Query Analyser,состоящее из двух областей (см. рис. 3).5Рис. 3В левой области отображается структура таблиц. Правая областьпредназначена для ввода SQL-команд, результаты выполнения запросовотображаются по мере получения информации в специальном окне. Вчастности, в верхней области для выполнения запросов к БД вводятсяSELECT-предложения, а в нижней - выдаются отчеты по этим запросам. Поокончании ввода команды в верхней области для ее выполнения нажимаетсяклавиша [F5]. Если команда не помещается в одну строчку, то для переносанажимается [Enter].Если SQL-команда вводится неверно, то в нижней области окнапоявляется сообщение SQL-сервера об ошибке.На этом сценарий входа в систему заканчивается, и пользователь можетначинать свою работу.1) Создание таблицы с именем poss.В приложении VI приведена структура информационного объекта"Учащиеся России", состоящая из 12 полей.
На основе характеристиккаждого из приведенных полей в верхней области окна необходимо ввестиследующую команду create table:create table poss6(nomer integer,fio char (40) not null,data_rogden char (6),pol char (1),sem_polog_k char (1),spec char (6),kat_obuch_k char (2),vuz_k integer,mp char (2),gp char (2),mo char (2),gok char (2)) [F5]Если пользователь допустит синтаксическую ошибку при наборе этойкоманды, то в нижней области окна появится сообщение о синтаксическойошибке, а команда create table не выполнится.
Пользователю в этом случаенеобходимо найти и исправить ошибки, а затем вновь запустить эту команду.Если команда create table выполнится успешно, то в нижней областиокна появится сообщение “The command(s) completed successfully”. Чтобыубедиться в том, что таблица создана в БД, необходимо в верхней областиокна ввести команду sp_help [F5].
При этом в нижней области окна появитсясписок всех таблиц БД.Аналогично создаются вспомогательная таблица "вузы-города-страныСНГ" и четыре таблицы словаря БД, структуры которых также приведены вприложении VI.Для создания этих таблиц в верхней области окна необходимопоследовательно вводить следующие команды create table:2) Создание таблицы с именем vuz_gorod:create table vuz_gorod(cod_vuza integer,nazvanie_vuza char (25),cod_goroda char (3),nazvanie_goroda char (20),cod_stran char (2),nazvanie_stran char (15))[F5]3) Создание таблицы с именем vuz:create table vuz(cod integer,uch_zavedenie char (25))[F5]4) Создание таблицы с именем family:create table family(cod char (1),family_status char (12)) [F5]75) Создание таблицы с именем kat_obuch:create table kat_obuch(cod char (2),kat_obucheniya char (16))[F5]6) Создание таблицы с именем gorod:create table gorod(cod char (3),nazvanie_goroda char (20)) [F5]Если все эти команды будут выполнены без ошибок, то с помощьюкоманды sp_help можно вывести список названий всех созданных таблиц(см.
рис. 4).Рис. 4Далее, все шесть таблиц заполняются соответствующими их структуреданными. Для загрузки записей в каждую таблицу используется оператордобавления записи в таблицу БД - insert (первая форма).87) Загрузка таблицы poss.В таблицу poss загружается 2000 записей; с помощью оператора insert(первая форма) можно загрузить только одну запись. Поэтому для загрузкитаблицы poss требуется 2000 операторов insert (первая форма). Если ихзадавать "вручную", то это займет очень много времени.Чтобы значительно ускорить процесс загрузки, необходимо на дискетеподготовить файлы, каждый из которых содержит набор пакетов. Каждыйпакет содержит одну команду insert и признак конца пакета - go (см.конспект курса). Количество пакетов в файле ограничено (порядка 200-250),так как ограничен по памяти буфер ввода команд (операторов, пакетов) SQLQuery Analyser.Таким образом, для загрузки таблицы poss в БД пользователюнеобходимо:а) вставить дискету с подготовленными файлами в дисковод;б) с помощью меню “File” последовательно открыть файлы (команда менюOpen) на дискете и, тем самым, переписывать их в верхнюю область окна;в) запустить на выполнение полученный в верхней области окна наборпакетов, нажав клавишу [F5].Остальные таблицы БД загружаются аналогично.
Чтобы убедиться, чтотаблицы загружены данными, необходимо в верхней области окна ввестикоманду: SELECT * FROM <имя таблицы> [F5] для каждой таблицы,например: SELECT * FROM kat_obuch [F5].В нижней области окна будет распечатана таблица kat_obuch.8) Создание индексов для таблицы poss.Для ускорения поиска в таблице poss необходимо создать индексы поключевым полям (т.е. по тем полям, по которым чаще всего требуется поискданных). Это следующие поля:а) номер;б) пол;в) код семейного положения;г) специальность;д) код категории обучения;е) код учебного заведения;ж) год приема;з) год окончания.Индексы создаются с помощью команды create index, причем для поля"номер" создается уникальный индекс, а для остальных полей - простыенегрупповые индексы.Таким образом, в верхней области окна необходимо ввестипоследовательно 8 команд:а) create unique index nomind on poss (nomer) [F5]б) create index polind on poss (pol)[F5]9в) create index semind on poss (sem_polog_k)[F5]г) create index specind on poss (spec)[F5]д) create index katind on poss (kat_obuch_k)[F5]е) create index vuzind on poss (vuz_k)[F5]ж) create index gpind on poss (gp)[F5]з) create index goind on poss (gok)[F5]Информацию о созданных индексах можно посмотреть с помощьюкоманды sp_helpindex <имя таблицы>.9) Создание индексов для остальных таблиц БД.Для вспомогательной таблицы "вузы-города-страны СНГ" индексысоздаются для трех ключевых полей:а) код учебного заведения:б) код города;в) код страны.Для поля "Код учебного заведения" создается уникальный индекс.
Вверхней области окна необходимо последовательно ввести три команды:а) create unique index codvgind on vuz_gorod (cod_vuza) [F5]б) create index codgoind on vuz_gorod (cod_goroda)[F5]в) create index codvsind on vuz_gorod (cod_stran)[F5]Для четырех таблиц словаря БД индексы создаются для каждогопервого поля их структуры, т.е. поля, содержащего код. Причем, индексыобязательно должны быть уникальными. Поэтому в верхней области окнанеобходимо последовательно ввести четыре команды:а) create unique index codsind on family (cod)[F5]б) create unique index codkind on kat_obuch (cod)[F5]в) create unique index codgind on gorod (cod)[F5]г) create unique index codvind on vuz (cod)[F5]В том случае, если пользователь обнаружит, что неправильно создалтаблицы или индексы, то ему необходимо пересоздать неправильныетаблицы или индексы.
Для этого ему необходимо сначала уничтожить этиобъекты, используя команду drop, а затем снова создать эти объекты,используя команду create.Примеры команды drop (см. конспект курса):1. drop table poss2. drop index poss.nomindВ том случае, если пользователь неправильно загрузит данные втаблицу, то он может воспользоваться командой truncate table для быстрогоудаления этих данных из таблицы, а затем вновь начать процесс загрузки,например:truncate table possВ качестве заданий к данной лабораторной работе пользователямпредлагается создать таблицы БД, соответствующие другим странам СНГ10(Украина, Белоруссия и др.) и имеющие такую же структуру, что и таблицаposs. Далее, каждому пользователю необходимо загрузить свою таблицуданными с дискеты, а также создать индексы для своей таблицы.ЛАБОРАТОРНАЯ РАБОТА № 2Цель:1. Научиться использовать предложения оператора SELECT и некоторыефункции для выполнения простых запросов к БД в режиме диалогового(интерактивного) SQL.2.