- •Введение
- •Часть 1. Технологии работы с базами данных
- •Часть 2. Проектирование ис и разработка базы данных для некоторой предметной области и программного приложения для работы с ней
- •Лабораторная работа 1 создание и модификация таблиц базы данных Цель работы
- •Содержание работы и методические указания к ее выполнению
- •Insert into имя_таблицы [(поле [,поле]...)]
- •Values (константа [,константа]...)
- •Контрольные вопросы
- •Лабораторная работа 2 выбор и модификация данных таблиц Цель работы
- •Содержание работы и методические указания к ее выполнению
- •Варианты заданий на составление запросов по выборке информации из таблиц базы данных
- •Варианты заданий на составление запросов по модификации информации из таблиц базы данных
- •Контрольные вопросы
- •Лабораторная работа 3 полномочия на использование схемы бызы данных. Работа с внешними схемами базы данных Цель работы
- •Содержание работы и методические указания к ее выполнению
- •Последовательность выполнения лабораторной работы:
- •Варианты заданий
- •Контрольные вопросы
- •Лабораторная работа 4 реализация простейших операций работы с базой данных средствами встроенного sql Цель работы
- •Содержание работы и методические указания к ее выполнению
- •Последовательность выполнения лабораторной работы
- •Требования к разрабатываемой программе
- •Варианты заданий
- •Контрольные вопросы
- •Лабораторная работа 5
- •Последовательность выполнения лабораторной работы
- •Варианты заданий
- •Контрольные вопросы
- •Лабораторная работа 6
- •Последовательность выполнения лабораторной работы:
- •Требования к разрабатываемой программе
- •Варианты заданий
- •Контрольные вопросы
- •2. Средства отслеживания ошибок
- •3. Непосредственное и подготавливаемое выполнение операторов sql
- •4. Использование параметров при выполнении
- •5. Настройка доступа к источнику данных
- •Последовательность выполнения лабораторной работы
- •Требования к разрабатываемой программе
- •Варианты заданий
- •Контрольные вопросы
- •Лабораторная работа 8 выборка данных с использованием средств odbc Цель работы
- •Содержание работы и методические указания к ее выполнению
- •Последовательность выполнения лабораторной работы
- •Требования к разрабатываемой программе
- •Варианты заданий
- •Лабораторная работа 9 доступ к базам данных посредством cgi-скрипта, написанного на языке esql/c Цель работы
- •Содержание работы и методические указания к ее выполнению
- •Последовательность выполнения лабораторной работы
- •Требования к разрабатываемой программе
- •Варианты заданий
- •Контрольные вопросы
- •Лабораторная работа 10 использование языка php для доступа к базам данных Цель работы
- •Содержание работы и методические указания к ее выполнению
- •Последовательность выполнения лабораторной работы
- •Требования к разрабатываемой программе
- •Варианты заданий
- •Контрольные вопросы
- •Последовательность выполнения лабораторной работы:
- •Контрольные вопросы
- •Последовательность выполнения лабораторной работы:
- •Контрольные вопросы
- •Лабораторная работа 13
- •Последовательность выполнения лабораторной работы:
- •Контрольные вопросы
- •Лабораторная работа 14
- •Последовательность выполнения лабораторной работы:
- •Контрольные вопросы
- •Лабораторная работа 15
- •Операторы языка sql
- •1. Операторы описания
- •2. Операторы манипуляции данными
- •3. Операторы определения транзакций
- •4. Операторы определения прав доступа
- •5. Встроенный sql
- •6. Триггеры и процедуры
Лабораторная работа 5
РАБОТА С КУРСОРОМ
Цель работы
Приобретение практических навыков работы с курсором в программах на языке ESQL/C.
Содержание работы и методические указания
к ее выполнению
Обработка многострочного запроса осуществляется с помощью специального объекта данных, называемого курсором. Множество строк, возвращаемое предложением Select, называется активным множеством. В процессе использования курсор может задаваться в двух режимах: последовательном и скроллирующем. Последовательный курсор позволяет просматривать активное множество только в последовательном порядке, а также используется при модификации и удалении строк из активного множества.
Скроллирующий курсор позволяет просматривать строки из активного множества в произвольном порядке. Основные операции при работе с курсором:
объявление курсора, выполняемое оператором Declare;
открытие курсора, выполняемое оператором Open;
выборка по курсору очередной строки запроса в главные переменные, выполняемая оператором Fetch;
закрытие курсора, выполняемое оператором Close.
Последовательность выполнения лабораторной работы
1. Изучить синтаксис и правила использования операторов Declare, Open, Fetch, Close (см. Приложение 2), а также особенности работы с последовательным и скроллирующим курсором.
2. Разработать и отладить набор ESQL/С-программ, решающих задачи из соответствующего варианта заданий. Результатом работы программ является набор строк, которые подлежат выводу на экран с соответствующими пояснительными заголовками.
3. Разработать и отладить набор ESQL/С-программ, решающих задачи из соответствующего варианта заданий аналогично заданию из п. 2 с той разницей, что выводить результаты запроса необходимо в обратном порядке следования строк. Указанное требование предполагает использование скроллирующего курсора.
Как и в предыдущей лабораторной работе, общими требованиями при разработке программ являются:
беспечение необходимой обработки ошибок;
использование аппарата транзакций;
вывод сообщений обо всех шагах выполнения программы, в том числе и о возможных ошибках;
программа должна быть достаточно документирована.
Варианты заданий
Вариант 1.
1. Для каждой поставляемой для некоторого изделия детали выдать ее номер, номер изделия и соответствующее общее количество деталей.
2. Получить номера изделий, для которых детали полностью поставляет поставщик S1.
3. Выдать номера и фамилии поставщиков, поставляющих детали для какого-либо изделия с деталью P1 в количестве, большем, чем средний объем поставок детали P1 для этого изделия.
Вариант 2.
1. Выдать общее количество деталей P1, поставляемых поставщиком S1.
2. Получить номера изделий, использующих только детали, поставляемые поставщиком S1.
3. Выдать номера деталей, поставляемых каким-либо поставщиком из Лондона, для изделия, изготавливаемого также в Лондоне.
Вариант 3.
1. Выдать номера и фамилии поставщиков, поставляющих одну и ту же деталь для всех изделий.
2. Получить общее число изделий, для которых поставляет детали поставщик S1.
3. Выдать номера изделий, детали для которых поставляет каждый поставщик, поставляющий какую-либо красную деталь.
Вариант 4.
1. Выдать полный список деталей для всех изделий, изготавливаемых в Лондоне.
2. Получить номера деталей, поставляемых каким-либо поставщиком из Лондона.
3. Выдать номера деталей, поставляемых для всех изделий из Лондона.
Вариант 5.
1. Выдать список всех поставок, в которых количество деталей находится в диапазоне от 300 до 750 включительно.
2. Получить номера изделий, использующих по крайней мере одну деталь, поставляемую поставщиком S1.
3. Выдать номера и названия деталей, поставляемых для какого-либо изделия в Лондоне.
Вариант 6.
1. Выдать номера и названия изделий, для которых город является первым в алфавитном списке таких городов.
2. Получить цвета деталей, поставляемых поставщиком S1.
3. Выдать номера и фамилии поставщиков, поставляющих деталь Р1 для какого-либо изделия в количестве, большем среднего объема поставок детали Р1 для этого изделия.
Вариант 7.
1. Выдать названия изделий, для которых поставляются детали поставщиком S1.
2. Получить номера деталей, поставляемых для какого-либо изделия поставщиком, находящимся в том же городе, где изготавливается это изделие.
3. Выдать номера изделий, для которых средний объем поставки деталей P1 больше наибольшего объема поставки любой детали для изделия J1.