Аннотация
Настоящая работа посвящена переносу базы данных на новую технологию с созданием клиентских частей под современные операционные системы Windows’95 и Windows NT для SQL базы данных. В пояснительной записке рассматриваются отличительные особенности технологии «клиент-сервер», по сравнению с технологией предыдущего поколения «файл-сервер». Производится описание процесса разработки клиентских частей под операционные системы Windows’95 и Windows NT для SQL базы данных. Описываются процесс разработки интерфейса пользователя под 32-разрядные операционные системы Windows’95 и Windows NT Workstation. Разрабатывается алгоритм переноса данных из старой базы данных в новую систему. Так же представлены результаты отладки и работы разработанной программы.
СОДЕРЖАНИЕ
Введение .......................................................................................... 3
1. Теоретическая часть
1.1. Обзор СУБД 5
1.1.1. Sybase System 11 .......................................................... 8
1.1.2. IBM DB2 ..................................................................... 17
1.1.3. RDMS Oracle .............................................................. 25
1.1.4. Microsoft SQL Server 6.5 ............................................ 36
1.2. Исследование предметной области ............................................................ 49
2. Практическая часть .................................................................. 62
2.1. Анализ существующей программы ................................................ 62
2.2. Выбор платформы и программных средств ..................................................... 64
2.3. Разработка структуры новой БД ........................................................... 78
2.4. Перенос данных в новую базу данных ............................................................. 80
2.5. Разработка программы .......................................................................... 83
3. Отладка ..................................................................................... 88
Заключение .................................................................................... 92
Литература .................................................................................... 93
Приложение А. Описание Базы данных.
Приложение В. Листинг отлаженных программ.
ВВЕДЕНИЕ
Для большинства средних и мелких российских предприятий информационные решения с использованием сетей персональных компьютеров являются фактическим стандартом. В тоже время, прикладное программное обеспечение, используемое этими предприятиями (такое как автоматизированные системы документооборота, системы управления промышленными и торговыми предприятиями, бухгалтерские системы и др.), создано при помощи инструментария предыдущего поколения, и не способно эффективно использовать ресурсы, предоставляемые новыми технологиями. К современным информационным системам уровня предприятия предъявляются очень высокие требования производительности, надежности, обеспечения целостности и безопасности данных (особенно при сегодняшнем развитии Internet), защиты от системных и аппаратных сбоев, масштабируемости, возможности взаимодействия с другими системами, работы в гетерогенных распределенных вычислительных сетях.
В течение последнего времени большое распространение получила новая технология построения баз данных – технология «клиент-сервер». Эта технология дает ряд неоспоримых преимуществ, по сравнению с технологией предыдущего поколения – технологией «файл-сервер». В частности, она предоставляет большие возможности по защите данных от несанкционированного доступа и разграничение прав доступа на уровне отдельных записей и полей, дает возможность работы с большими мультимедийными и нестандартными данными. Также новая технология позволяет работать как в локальных сетях, так и в глобальных и Internet, и многое другое. Системы, построенные на новой технологии «клиент-сервер», отличаются высокой степенью безопасности, территориально независимости и не требовательности к аппаратной мощности клиентских станций.
В настоящее время, в области баз данных и проектировании систем, с использованием новой технологии «клиент-сервер», ведутся работы в разных направлениях. Во-первых, продолжают вестись работы по усовершенствованию технологии и уменьшению требований к аппаратному и программному обеспечению, с одновременным увеличением производительности. Во-вторых, ведутся работы в направлении переноса всех программ, использующих технологию предыдущего поколения «файл-сервер», на новую и более современную технологию «клиент-сервер».
Весьма актуальным является проблема переноса бухгалтерских программ, рассчитанных на малые и средние предприятия и фирмы, на новую технологию. Это обусловлено тем, что область данных программ осталась почти не тронутая новой технологией. К тому же, все больше пользователей переводят свои персональные компьютеры под управление 32-разрядными операционными системами. 32-разрядные операционные системы клиентов, такие как Windows’95 и Windows NT Workstation, используют удобный в работе графический пользовательский интерфейс и предоставляют все необходимое для эффективной работы в распределенной среде.
1.1 Обзор СУБД
Несмотря на то, что технологии баз данных становятся все более распространенными в практике, многие разработчики прикладных систем, администраторы баз данных и конечные пользователи недостаточно хорошо понимают, что такое современные базы данных и системы управления базами данных (СУБД). Сказывается отсутствие или поверхностный уровень соответствующих курсов в высших учебных заведениях, практическое отсутствие литературы на русском языке и, наконец, привлечение к деятельности, связанной с использованием баз данных, специалистов, которые ранее работали в других областях. Обучение, проводимое коммерческими компаниями, обычно ориентируется на конкретные программные продукты и не может компенсировать отсутствие базовой подготовки.
Во всей истории вычислительной техники можно проследить две основных области ее использования. Первая область - применение вычислительной техники для выполнения численных расчетов, которые слишком долго или вообще невозможно производить вручную. Развитие этой области способствовало интенсификации методов численного решения сложных математических задач, развитию класса языков программирования, ориентированных на удобную запись численных алгоритмов, становлению обратной связи с разработчиками новых архитектур ЭВМ.
Вторая область - это использование средств вычислительной техники в автоматических или автоматизированных информационных системах. В самом широком смысле информационная система представляет собой программно-аппаратный комплекс, функции которого состоят в надежном хранении информации в памяти компьютера, выполнении специфических для данного приложения преобразований информации и/или вычислений, предоставлении пользователям удобного и легко осваиваемого интерфейса. Обычно такие системы имеют дело с большими объемами информации, и эта информация имеет достаточно сложную структуру.
Вторая область использования вычислительной техники возникла несколько позже первой. Это связано с тем, что на заре вычислительной техники возможности компьютеров по хранению информации были очень ограниченными.
Но поскольку в информационных системах требуется поддержка сложных структур данных, эти индивидуальные средства управления данными составляли существенную часть информационных систем, практически повторяясь (как программные компоненты) от одной системы к другой. Стремление выделить общую часть информационных систем, ответственную за управление сложно структурированными данными явилось первой побудительной причиной создания СУБД, которая, возможно, могла бы представлять некоторую общую библиотеку программ, доступную каждой информационной системе.
Однако очень скоро стало понятно, что невозможно обойтись такой общей библиотекой программ, реализующей над стандартной базовой файловой системой более сложные методы хранения данными.
Вообще, согласованность данных является ключевым понятием баз данных. На самом деле, если информационная система поддерживает согласованное хранение информации в нескольких файлах, можно говорить о том, что она поддерживает базу данных. Если же некоторая вспомогательная система управления данными позволяет работать с несколькими файлами, обеспечивая их согласованность, можно назвать ее системой управления базами данных. Уже только требование поддержания согласованности данных в нескольких файлах не позволяет обойтись библиотекой функций: такая система должна обладать некоторыми собственными данными (мета-данными) и даже знаниями, определяющими целостность данных.
Прежде чем приступить к конкретному обзору Систем Управления Базами Данных (СУБД), необходимо дать ряд определений терминам, использующимся для описания СУБД.
Данные – это информация, зафиксированная в определенной (структурированной) форме, пригодной для последующей обработки, хранения и передачи. К данным необходим «прозрачный» доступ сразу нескольких пользователей, т.е. любой пользователь должен иметь возможность получать необходимую ему информацию, модернизировать ее, заносить новую и удалять старую, причем конечный пользователь может обо всех этих операциях и не знать. Банк Данных (БнД) – это информационная система, включающая в себя информационные, математические (алгоритмические), программные, языковые, организационные и технические средства (аппаратная платформа и операционная система) обеспечивающие в совокупности централизованную поддержку и коллективное использование данных пользователем БнД. Языковые средства – языки, с помощью которых описывается структура данных (DDL) и языки манипулирование данными (DML – SQL). База Данных (БД) – это структурированная определенным образом совокупность данных, относящихся к конкретной задаче. БД может быть как локальная, так и распределенная. Система Управления Базами Данных (СУБД) представляет собой комплекс инструментальных средств (программных и языковых) реализующих централизованное управление БД и обеспечивающих доступ к данным (изменения, добавления, удаления, резервного копирования и т.д.). СУБД должна обеспечивать поиск, модификацию и сохранность данных, а также оперативный доступ (время отклика), защиту целостности данных от аппаратных сбоев и программных ошибок, разграничение прав и защита от несанкционированного доступа, поддержка совместной работы нескольких пользователей с данными.