Главная страница
Навигация по странице:

  • Глава 15. Оптимизация SQL-запросов ......................................................... 269

  • ЧАСТЬ VI. СОЗДАНИЕ ПРИЛОЖЕНИЙ НА SQL ................................... 275 Глава 16. Программирование на SQL .......................................................... 277

  • Глава 17. Процедурные расширения SQL ................................................... 283

  • Глава 18. Хранимые процедуры .................................................................... 315

  • ЧАСТЬ VII. ПРИМЕР СОЗДАНИЯ БАЗЫ ДАННЫХ "UCHEB" .......... 347 Глава 19. Описание предметной области "Учебные планы" .................. 349

  • Глава 20. Построение инфологической модели "Учебные планы" ....... 366

  • Глава 21. "Итоговая успеваемость" ............................................................. 382

  • Глава 22. Работаем с SQL ................................................................................ 393

  • Глава 23. Некоторые приложения базы данных "UCHEB"..................... 403

  • Литература ......................................................................................................... 425

  • и выполнения ....................................................................... 429

  • Приложение Б. Описание содержимого компакт-диска ........................... 451

  • ЧАСТЬ I ЧТО ТАКОЕ БАЗА ДАННЫХ И СУБД

  • Кириллов В.В., Громов Г.Ю. - Введение в реляционные базы данных. Литература для вузов isbn 9785941577705 в книге рассматриваются основные понятия баз данных и систем управления ими


    Скачать 11.62 Mb.
    НазваниеЛитература для вузов isbn 9785941577705 в книге рассматриваются основные понятия баз данных и систем управления ими
    АнкорКириллов В.В., Громов Г.Ю. - Введение в реляционные базы данных.pdf
    Дата16.04.2018
    Размер11.62 Mb.
    Формат файлаpdf
    Имя файлаКириллов В.В., Громов Г.Ю. - Введение в реляционные базы данных.pdf
    ТипЛитература
    #18127
    страница2 из 28
    1   2   3   4   5   6   7   8   9   ...   28
    Глава 14. Системный каталог (словарь данных) ....................................... 256
    14.1. Что такое системный каталог ................................................................... 256 14.2. Словарь данных Oracle .............................................................................. 257 14.2.1. Структура словаря данных ................................................................. 258 14.2.2. Краткое содержимое словаря данных ............................................... 259 14.2.3. Примеры использования словаря данных ......................................... 263
    Глава 15. Оптимизация SQL-запросов ......................................................... 269
    15.1. Введение ..................................................................................................... 269 15.2. Использование индексов ........................................................................... 271 15.2.1. Что такое индексы ............................................................................... 271 15.2.2. Создание индексов .............................................................................. 272 15.2.3. Необходимость использования индексов ......................................... 273
    ЧАСТЬ VI. СОЗДАНИЕ ПРИЛОЖЕНИЙ НА SQL ................................... 275
    Глава 16. Программирование на SQL .......................................................... 277
    16.1. Введение ..................................................................................................... 277 16.2. Статический SQL ....................................................................................... 278 16.3. Динамический SQL .................................................................................... 279 16.4. Интерфейс программирования приложений ........................................... 281

    Оглавление
    VIII
    Глава 17. Процедурные расширения SQL ................................................... 283
    17.1. Введение ..................................................................................................... 283 17.2. Основы PL/SQL .......................................................................................... 283 17.2.1. Анонимный блок PL/SQL ................................................................... 284 17.3. Переменные, константы, записи PL/SQL ................................................ 286 17.4. Команды управления ходом выполнения программы ........................... 289 17.4.1. Команды условного перехода (IF...) .................................................. 289 17.4.2. Метки и оператор безусловного перехода (GOTO) ......................... 290 17.4.3. Операторы цикла (LOOP, WHILE...LOOP и FOR...LOOP) .............. 291 17.4.4. Операторы EXIT, EXIT-WHEN и NULL ............................................. 293 17.5. SQL-предложения в PL/SQL ..................................................................... 294 17.5.1. SELECT...INTO ..................................................................................... 295 17.5.2. INSERT, UPDATE и DELETE .............................................................. 296 17.6. Обработка ошибок ..................................................................................... 296 17.6.1. Встроенные исключительные ситуации ........................................... 297 17.6.2. Исключительные ситуации, определяемые пользователем ............ 299 17.6.3. Обработчик OTHERS .......................................................................... 300 17.7. Курсоры ...................................................................................................... 300 17.7.1. Связь объектов PL/SQL с таблицами базы данных ......................... 300 17.7.2. Явный курсор ....................................................................................... 300 17.7.3. Неявный курсор (SQL-курсор) ........................................................... 307 17.8. Динамический SQL в PL/SQL................................................................... 308
    Глава 18. Хранимые процедуры .................................................................... 315
    18.1. Введение ..................................................................................................... 315 18.2. Хранимые процедуры ................................................................................ 316 18.2.1. Создание описания процедуры .......................................................... 316 18.2.2. Удаление описания процедуры .......................................................... 317 18.2.3. Перекомпиляция процедуры .............................................................. 317 18.2.4. Пример создания процедуры.............................................................. 318 18.3. Функции ...................................................................................................... 320 18.3.1. Создание описания функции .............................................................. 320 18.3.2. Удаление описания функции ............................................................. 321 18.3.3. Перекомпиляция функции .................................................................. 321 18.3.4. Пример создания функции ................................................................. 321 18.4. Триггеры ..................................................................................................... 323 18.4.1. Создание описания триггера .............................................................. 324 18.4.2. Изменение описания триггера ........................................................... 327 18.4.3. Удаление описания триггера .............................................................. 328 18.4.4. Использование триггера ..................................................................... 328 18.4.5. Изменяющиеся (мутирующие) таблицы ........................................... 332

    Оглавление
    IX
    18.5. Пакеты (модули) ........................................................................................ 338 18.5.1. Модули ................................................................................................. 338 18.5.2. Создание описания пакета .................................................................. 338 18.5.3. Изменение описания пакета ............................................................... 340 18.5.4. Удаление пакета .................................................................................. 341 18.5.5. Примеры пакетов ................................................................................. 342 18.6. Встроенные пакеты PL/SQL ..................................................................... 345
    ЧАСТЬ VII. ПРИМЕР СОЗДАНИЯ БАЗЫ ДАННЫХ "UCHEB" .......... 347
    Глава 19. Описание предметной области "Учебные планы" .................. 349
    19.1. О Государственных образовательных стандартах (ГОС) ...................... 349 19.2. Основные образовательные программы (ООП) ...................................... 353 19.2.1. Базовые учебные планы ...................................................................... 353 19.2.2. Индивидуальные учебные планы и планы ускоренного обучения ............................................................................................... 358 19.2.3. Рабочие учебные планы ...................................................................... 358 19.2.4. Дисциплины по выбору студента и индивидуальные рабочие планы ..................................................................................... 360 19.2.5. Студенческие потоки и группы ......................................................... 363 19.2.6. Еще о рабочих учебных планах ......................................................... 365
    Глава 20. Построение инфологической модели "Учебные планы" ....... 366
    20.1. Первая попытка проектирования ............................................................. 366 20.2. Вторая попытка проектирования.............................................................. 369 20.2.1. Шапки планов ...................................................................................... 369 20.2.2. Дисциплины планов ............................................................................ 376 20.3. Инфологическая модель "Учебные планы" ............................................ 381
    Глава 21. "Итоговая успеваемость" ............................................................. 382
    21.1. Описание предметной области "Итоговая успеваемость" ..................... 382 21.2. Инфологическая модель "Итоговая успеваемость" ................................ 386 21.3. Объединенная инфологическая модель "UCHEB" ................................. 390
    Глава 22. Работаем с SQL ................................................................................ 393
    22.1. Запросы ....................................................................................................... 393 22.2. Ответы к некоторым запросам ................................................................. 400

    Оглавление
    X
    Глава 23. Некоторые приложения базы данных "UCHEB"..................... 403
    23.1. Функции Человек и Decline ....................................................................... 403 23.2. Пакет для просмотра успеваемости ......................................................... 413
    Литература ......................................................................................................... 425
    ПРИЛОЖЕНИЯ ................................................................................................ 427
    Приложение А. Инструментальные средства разработки
    и выполнения ....................................................................... 429
    А1. Oracle Database Express Edition ................................................................... 429
    А1.1. Общие сведения ..................................................................................... 429
    А1.2. Состав Oracle Database XE ................................................................... 432
    А1.3. Требования к программному обеспечению ....................................... 434
    А1.4. Взаимодействие с межсетевыми экранами ........................................ 434
    А1.5. Требования к надстройкам Oracle Database для платформы .NET ..... 435
    А1.6. Требования к Web-браузеру ................................................................. 435
    А2. Установка сервера Oracle Database XE ...................................................... 436
    А3. Русификация Oracle Database XE и создание баз данных "COOK" и "UCHEB".................................................................................................... 442
    А4. SqlDeveloper .................................................................................................. 443
    А4.1. Введение ................................................................................................. 443
    А4.2. Краткое руководство по установке и настройке ............................... 445
    Приложение Б. Описание содержимого компакт-диска ........................... 451
    Предметный указатель .................................................................................... 453

    Введение
    Основные идеи современной информационной технологии базируются на концепции баз данных. Согласно этой концепции, основой информационной технологии являются данные, которые должны быть организованы в базах данных с целью адекватного отображения изменяющегося реального мира и удовлетворения информационных потребностей пользователей.
    Увеличение объема и структурной сложности хранимых данных, расширение круга пользователей информационных систем выдвинуло требование создания удобных общесистемных средств интеграции хранимых данных и управле- ния ими. Это и привело к появлению в конце 1960-х годов первых промыш- ленных систем управления базами данных (СУБД) — специализированных программных средств, предназначенных для организации и ведения баз дан- ных. Сначала это были системы с инвертированными списками, иерархиче- ские и сетевые системы. В 1969 году была предложена реляционная модель данных (см. главу 3), а в конце 1970-х и начале 1980-х годов стали появляться первые промышленные реляционные СУБД. Сейчас преобладающее боль- шинство СУБД являются реляционными, несмотря на появление объектно- ориентированных СУБД. Это не в последнюю очередь связано с тем, что в конце 1990-х годов большинство ведущих производителей реляционных СУБД создали объектные надстройки к реляционной схеме, что привело к появле- нию объектно-реляционных СУБД, поддерживающих некоторые технологии, реализующие объектно-ориентированный подход.
    Поэтому в данной книге рассматривается реляционная модель данных, реля- ционные СУБД и основной язык общения с этими СУБД — SQL.
    Несмотря на совпадающую модель данных, положенную в основу таких
    СУБД, и использование ими языка, в основном поддерживающего стандарт
    SQL:2003 (см. разд. 4.1), все они, в той или иной мере, отличаются друг от друга. Поэтому в иллюстрационных примерах часто будет использоваться реализация SQL:2003 Oracle Database 10g.

    Введение
    2
    Книга адресована широкому кругу пользователей. Для освоения материала книги необходимы минимальные знания о компьютерах. Те же читатели, ко- торые установят на своем персональном компьютере СУБД, базы данных и средства для работы с ними, размещенные на приложенном к книге ком- пакт-диске, смогут достаточно детально изучить материал, связанный с реля- ционными базами данных и познакомиться с одной из лучших профессио- нальных СУБД.
    Книга ориентирована на студентов высших учебных заведений, изучающих дисциплины "Базы данных", "Информационные системы", "Проектирование информационных систем", а также будет полезна специалистам в области информационных технологий. Это подтверждается отзывами о частично включенных в материал книги учебных пособиях [4, 5], получаемыми авто- рами уже более десяти лет, а также отзывами студентов направлений "Ин- форматика и вычислительная техника", "Информационные системы" и "При- кладная математика и информатика", изучающих перечисленные ранее дисциплины в СПбГУ ИТМО.
    Книга содержит 23 главы и 2 приложения. Главы сгруппированы в семь частей.
    Первая часть знакомит с историей появления и основными понятиями баз данных, с моделями данных и реляционным подходом. В главе 1 дается об- щее представление о возникновении концепции баз данных и их архитектуре.
    В главе 2 рассматриваются основные понятия информационно-логического
    (инфологического) моделирования, язык моделирования, необходимость введения ключей и подходы к построению моделей. В главе 3 разбираются основы реляционного подхода и манипулирования реляционными данными.
    Вторая часть знакомит с основами языка SQL и его применением для полу- чения информации из реляционных баз данных. В главе 4 рассматриваются стандарты языка, его синтаксические конструкции, типы данных и разнооб- разные функции. Глава 5 описывает предложение
    SELECT
    , выборку данных без использования и с использованием фразы для отбора данных, упорядоче- ние и агрегирование данных. В главе 6 продолжается изучение способов вы- борки данных, но уже из нескольких таблиц. Рассматриваются средства од- новременной работы с множеством таблиц, соединения, вложенные подзапросы и объединение нескольких запросов.
    В третьей части анализируются средства защиты данных, средства измене- ния содержимого базы данных, управления транзакциями и обеспечения па- раллельной работы. Глава 7 описывает средства языка SQL, предназначен- ные для защиты данных. Здесь рассматривается создание и использование представлений. В главе 8 обсуждаются особенности синтаксиса и примене- ния предложений модификации данных. В главе 9 дается определение тран-

    Введение
    3
    закции и объясняется необходимость ее использования. Рассматриваются проблемы, возникающие в многопользовательском режиме работы, и их ре- шение.
    Четвертая часть описывает цели и процедуры проектирования, основы нормализации и пример проектирования конкретной базы данных. В главе 10 обсуждаются цели проектирования, возможные ошибки в процессе проекти- рования и этапы проектирования. Глава 11 посвящена функциональным и многозначным зависимостям, нормальным формам, процедурам нормализа- ции. Здесь даются рекомендации по построению даталогической модели.
    В главе 12 приводится подробный пример проектирования базы данных "Библиотека".
    В пятой части рассматривается язык создания основных объектов базы дан- ных, системный каталог и способы оптимизации запросов. В главе 13 дается обзор языка определения данных, сведения о создании и изменении таблиц, а также последовательностей. Глава 14 объясняет, зачем нужен системный каталог, описывает его структуру, приводит примеры использования. В гла-
    ве 15 обсуждаются вопросы, связанные с оптимизацией выполнения запросов и способов, позволяющих увеличить их производительность.
    В шестой части рассматриваются различные варианты и средства создания приложений с использованием языка SQL и его процедурных расширений.
    Глава 16 описывает статический и динамический SQL, а также интерфейс программирования приложений. В главе 17 подробно анализируется одно из таких расширений — PL/SQL. Даются основы PL/SQL: достаточно подробно рассматриваются команды, обработка ошибок, курсоры и динамический SQL в PL/SQL. В главе 18 приводятся синтаксис и примеры создания хранимых процедур, функций, триггеров и пакетов (модулей). Рассказывается о встро- енных пакетах PL/SQL.
    Седьмая часть достаточно подробно описывает инфологические модели двух связанных предметных областей из интегрированной информационной системы управления университетом. Вырезка "UCHEB" из базы данных этой информационной системы, относящаяся к рассматриваемым моделям, раз- мещена на приложенном к книге компакт-диске. Она может использоваться в процессе изучения материала книги. В главе 19 рассказывается о Государ- ственных образовательных стандартах и основных образовательных про- граммах. На основании этого материала создается инфологическая модель учебных планов, процедура построения которой рассматривается в следую- щей главе. Глава 20 подробно анализирует подходы к построению инфологи- ческой модели, здесь приводится диаграмма сущность-связь "Учебные планы".
    В главе 21 дается описание предметной области, связанной с успеваемостью

    Введение
    4
    студентов, рассматривается процедура построения инфологической модели и приводится диаграмма сущность-связь "Итоговая успеваемость". Глава 22
    наполнена запросами, которые надо "перевести" на язык SQL и реализовать во время изучения книги. Здесь также даны возможные ответы к некоторым из этих запросов. В главе 23 приводятся листинги и описания ряда приложе- ний (функции, процедур и пакетов) базы данных "UCHEB".
    В приложениях даны полезные справочные сведения о PL/SQL. Приложе-
    ние А представляет собой краткое описание СУБД Oracle 10g Express Edition
    (XE). Здесь представлены инструкция по ее установке, краткое описание не- которых инструментов для работы с базами данных, расположенными на
    Oracle 10g XE, и инструкция по установке Oracle SQL Developer. Вприложе-
    нии Б приводится перечень инструментальных средств, инструкций и лис- тингов, размещенных на компакт-диске к книге.

    ЧАСТЬ
    I
    ЧТО ТАКОЕ
    БАЗА ДАННЫХ И СУБД
    1   2   3   4   5   6   7   8   9   ...   28


    написать администратору сайта