
Лабораторная работа № 4
Изучение возможностей субд ibm db2
по созданию и ведению баз данных
1. Цель работы
Целью работы является изучение возможностей СУБД DB2 по созданию и ведению баз данных.
2. Задачи
Задачами лабораторной работы являются овладение навыками создания и заполнения таблиц баз данных, создания производных таблиц, триггеров, хранимых процедур для СУБД IBM DB2, освоение программных технологий доступа к базам данных DB2 из приложений Java.
3. Теоретическая часть
DB2 – семейство программных продуктов в области управления информацией компании IBM. Чаще всего, ссылаясь на DB2, имеют в виду реляционную систему управления базами данных DB2 Universal Database (DB2 UDB), разрабатываемую и выпускаемую компанией IBM.
Система DB2 Universal Database – это система управления реляционными базами данных с полной поддержкой Web, которая обеспечивает организацию информационных хранилищ данных и обработку транзакций. Она может быть установлена как на карманных и однопроцессорных компьютерах, так и разворачиваться на кластерах компьютеров, способна работать с мультимедийными средствами информации, обеспечивая поддержку изображений, аудиороликов, видеоклипов и текстовой информации.
Система DB2 оптимизирована для каждой платформы, что приводит к существенному повышению ее производительности. По своим внутренним свойствами программные продукты DB2, которые работают на платформах универсальных вычислительных машин, отличаются от тех же продуктов, функционирующих на распределенных платформах.
DB2 Express-C. В настоящее время, помимо коммерческих продуктов семейства, IBM распространяет также бесплатный дистрибутив DB2 Express-C. DB2 Express-C представляет собой готовый к использованию в производственной среде сервер базы данных, построенный по передовой технологии, которая совершенствовалась с каждой новой версией DB2 для Linux и Windows. Вариант DB2 для Windows существует с 1995 года, а для Linux – c 1999.
DB2 Express-C представляет собой сервер базы данных с весьма малым необходимым объемом обслуживания. Он поставляется с полным набором графических инструментов и инструментов командной строки в помощь администраторам базы данных. Наиболее часто используемый графический инструмент называется DB2 Control Center (Центр управления), а наиболее часто используемый инструмент командной строки имеет название DB2 CLP (Command Line Processor DB2, или обработчик командной строки DB2).
Мастера графических инструментов DB2 могут использоваться для быстрого обучения выполнению распространенных задач администрирования при работе с DB2. Каждым объектом DB2 Control Center можно управлять при помощи нажатия правой клавиши мыши на объекте в дереве объектов. В программе имеется много мастеров, которые способны помочь администраторам баз данных в выполнении распространенных задач, таких как создание резервной копии образа базы данных и восстановление предыдущего образа.
Представления в DB2. В DB2 представления носят название производных таблиц. Одна из причин использования производных таблиц состоит в необходимости ограничения доступа к определенным строкам и столбцам базы данных. Доступ к данным можно ограничить множеством способов, чтобы информация была доступна только тем, кто имеет соответствующие полномочия.
Производные таблицы могут быть созданы как из базовых таблиц, так и из других представлений. Для создания представлений используется конструкция CREATE VIEW, однако DB2 позволяет частично упростить эту процедуру через Control Center. В последнем случае остается только правильно сконструировать запрос SELECT на извлечение данных, причем здесь можно использовать инструментарий мастера SQL Assist.
Триггеры в DB2. Триггер представляет набор действий, выполняющихся при наступлении событий вставки, обновления или удаления данных в таблице. При выполнении такого SQL-оператора говорят, что триггер активизируется. Триггер может быть активизирован до или после выполнения SQL-операторов. Триггер создается командой CREATE TRIGGER.
Хранимые процедуры в DB2. Хранимые процедуры на SQL Procedure Language (SQL PL) рассматриваются как собственные, присущие среде DB2, поскольку они хранятся в базах данных DB2 для Windows или Linux как объекты. SQL PL развивался как единственный язык хранимых процедур на основе стандартов ANSI SQL. SQL PL поддерживается всеми представителями семейства серверов базы данных DB2 для Linux, UNIX, Windows, iSeries, и z/OS.
Хранимые процедуры в DB2 не очень широко применяются, при этом традиционно для написания хранимых процедур используются обычные языки программирования высокого уровня (Си,Java,PL/I,Коболи т. д.), это позволяет программисту легко оформлять один и тот же код либо как часть приложения, либо как хранимую процедуру, в зависимости от того, на клиенте или на сервере его целесообразнее выполнять. В настоящее время в DB2 также реализовано процедурное расширение SQL для хранимых процедур в соответствии со стандартом ANSI SQL/PSM.
Java – объектно-ориентированный язык программирования, разработанный компанией Sun Microsystems. Приложения Java обычно компилируются в специальный байт-код, поэтому они могут работать на любой виртуальной Java-машине (JVM) независимо от компьютерной архитектуры. Достоинство подобного способа выполнения программ — в полной независимости байт-кода от операционной системы и оборудования, что позволяет выполнять Java-приложения на любом устройстве, для которого существует соответствующая виртуальная машина.
Java – название не только самого языка, но и платформы для создания и исполнения приложений на основе данного языка. Java не является процедурным языком, поэтому основной единицей Java-приложения является класс, именно внутри класса может существовать любая функция.
Eclipse. Платформа Eclipse создана для построения интегрированных сред разработки (IDE). Она может использоваться для создания различных сквозных вычислительных решений для множества сред выполнения программ.
Основной идеей проекта Eclipse является создание «Apache для инструментов разработчика». Под этим подразумевается создание инфраструктуры с открытым кодом, предоставляющей множество базовых сервисов, так необходимых разработчикам ПО. Это должен быть "инструментарий для разработки инструментариев". Являясь не просто набором API, инфраструктура Eclipse будет состоять из реального кода, созданного для выполнения реальной работы.
Платформа Eclipse представляет собой фундамент для построения и запуска интегрированных инструментов разработки сквозного программного обеспечения. Платформа состоит из компонентов с открытым исходным кодом, используемым поставщиками инструментов для построения решений, встраиваемых в интегрированную рабочую область. Платформа Eclipse объединяет в себе технологию, выражающуюся в правильно оформленном дизайне и среде реализации.
Eclipse – в первую очередь полноценная Java IDE, нацеленная на групповую разработку: среда интегрирована с системами управления версиями – CVS в основной поставке, для других систем (например, Subversion,MS SourceSafe) существуют плагины. В силу бесплатности и высокого качества, Eclipse во многих организациях является корпоративным стандартом для разработки приложений. Eclipse написана на Java, потому является платформо-независимым продуктом
JDBC – Разработка Java-приложений в DB2 не представляет особых сложностей, поскольку каждый клиент и сервер DB2 имеет драйвер, совместимый с JDBC. В настоящее время в DB2 входят два различных драйвера JDBC. Оригинальные драйверы (db2java.zip) иногда называли в соответствии с их архитектурой драйвером приложения (тип 2) и сетевым драйвером. Более новый и гибкий драйвер JDBC (db2jcc.jar) используется в последних промышленных тестах Java Client/Server. Кроме того, драйвер DB2 для JDBC (db2jcc.jar) встроен в DB2 Run-time client.
Если приложение разрабатывается с использованием «чистого» Java (pure Java), то файлы db2jcc_license_cu.jar и db2jcc.jar должны быть прописаны в переменную CLASSPATH.
Серверы Java 2 Platform Enterprise Edition (J2EE), такие как сервер приложения IBM WebSphere Application Server, вместе с серверами данных DB2 предоставляют инфраструктуру ответственного распределенного приложения для обеспечения масштабируемых приложений.