Использование технологий управления данными для автоматизации работы организации

 

СОДЕРЖАНИЕ

программирование база клиентский приложение

ВВЕДЕНИЕ

1. ПОНЯТИЕ БАЗЫ ДАННЫХ

.1 Определение базы данных

.2 Обзор существующих систем управления базами данных

2. ПРОЕКТИРОВАНИЕ И СОЗДАНИЕ БАЗЫ ДАННЫХ И ПРОГРАММНАЯ РЕАЛИЗАЦИЯ КЛИЕНТСКОГО ПРИЛОЖЕНИЯ

.1 Концептуальное проектирование

.2 Логическое проектирование

.3 Физическое проектирование

.4 Обзор языков программирования

.5 Создание клиента с помощью выбранного языка программирования

ЗАКЛЮЧЕНИЕ

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ


ВВЕДЕНИЕ


Актуальность исследования. Для автоматизации работы организации используют технологии управления данными, т.к. с развитием Internet технологий появилась возможность доступа к удаленным БД. Примером технологии управления данными является система управления базами данных, т.к. она позволяет создавать распределённые базы данных.

Потоки информации, циркулирующие в мире, который нас окружает, огромны. Во времени они имеют тенденцию к увеличению. Уже сегодня без баз данных невозможно представить работу большинства финансовых, промышленных, торговых и прочих организаций. Важнейшим достоинством применения БД в информационных системах является обеспечение независимости данных от прикладных программ. Это дает возможность пользователям не заниматься проблемами представления данных на физическом уровне: размещения данных в памяти, методов доступа к ним и т. д.

Access - самая популярная система управления базами данных (СУБД) общего назначения. Это комплекс программных средств, предназначенных для создания структуры новой базы данных, наполнения её содержимым, редактирования содержимого, отбора данных в соответствии с заданными критериями, их упорядочивания, оформления, печати.

Тема исследования: использование технологий управления данными для автоматизации работы организации.

Целью дипломной работы является - разработка системы управления базами данных для автоматизации работы организации.

Задачи дипломной работы:

-проанализировать материалы по теме исследования;

-разработать требования к приложению;

-спроектировать базу данных;

-создать базу данных в системе управления базами данных Access;

-написать клиентское приложение с помощью выбранного языка программирования.

Объектом исследования является автоматизация работы организации с применением базы данных.

Предметом исследования является технология создания системы управления базы данных.


1. ПОНЯТИЕ БАЗЫ ДАННЫХ


.1 Определение базы данных


База данных представляет собой совокупность специальным образом организованных данных, хранимых в памяти вычислительной системы и отображающих состояние объектов и их взаимосвязей в рассматриваемой предметной области [29].

Логическую структуру хранимых в базе данных называют моделью представление данных. К основным моделям представления данных (моделям данных) относятся следующие: иерархическая, сетевая, реляционная, постреляционная, многомерная и объектно-ориентированная.

Обычно данные в базе данных называют «постоянными». Под словом «постоянные» подразумеваются данные, которые отличаются от других, более изменчивых данных, таких как промежуточные результаты, входные и выходные данные, управляющие операторы, рабочие очереди, программные управляющие блоки и вообще все транзитные данные. Под понятием «входные» и «выходные »:

-входные данные - это информация, передаваемая системе. Такая информация может стать причиной изменений в постоянных данных, но не является частью базы данных;

-выходные данные - это сообщение и результаты, выдаваемые системой. Эту же информацию можно брать из постоянных данных, но ее нельзя рассматривать как часть базы данных.

Система баз данных - это компьютеризированная система хранения записей; то есть это компьютеризированная система, основная цель которой- содержать информацию и предоставлять ее по требованию. К информации может относиться все, что заслуживает внимания отдельного пользователя или предприятия, использующего систему.

Системы баз данных существует как на малых компьютерах, так и на больших машинах. В частности, системы на больших машинах («большие системы») в основном многопользовательские, тогда как системы на малых машинах («малые системы»), как правило, однопользовательские. Однопользовательская система- это система, в которой в одно и то же время к базе данных может получить доступ не более одного пользователя; многопользовательская система- это система, в которой к базе данных могут получить доступ сразу несколько пользователей. Основная задача большинства многопользовательских системе- позволить каждому отдельному пользователю работать с системой как с однопользовательской. Различия между многопользовательской и однопользовательской системами проявляются в их внутренней структуре и потому практически не видны конечному пользователю.

В общем случае данные в базе данных являются интегрированными и общими. Эти два аспекта, интеграция и разрешение общего доступа, представляют собой наиболее важное преимущество использования систем баз данных на «большом» оборудовании; и по меньшей мере один из них- интеграция - является преимуществом их использования на «малом» оборудовании.

Под понятием интегрированные данные подразумевается возможность представить базу данных как объединение нескольких отдельных файлов данных, полностью или частично не перекрывающихся.

Под понятием общие данные подразумевается возможность использования отдельных областей данных в базе данных несколькими различными пользователями, т. е. каждый из этих пользователей может иметь доступ к одной и той же области данных.

Хранимые в базе данные имеют определенную логическую структуру - иными словами, описываются некоторой моделью представления данных (моделью данных), поддерживаемой СУБД . К числу классических относятся следующие модели данных:

-иерархическая;

-сетевая;

-реляционная.

Кроме того, в последние годы появились и стали более активно внедряться на практике следующие модели данных:

-постреляционная;

-многомерная;

-объектно-ориентированная.

Разрабатываются также всевозможные системы, основанные на других моделях данных, расширяющих известные модели. В их числе можно назвать объектно-реляционные, дедуктивно-объектно-ориентированные, семантические, концептуальные и ориентированные модели. Некоторые из этих моделей служат для интеграции баз данных, баз знаний и языков программирования.

Иерархическая БД представляет собой упорядоченную совокупность экземпляров данных типа «дерево» (деревьев), содержащих экземпляры типа «запись» (записи). Часто отношения родства между типами переносят на отношения между самими записями. Поля записей хранят собственно числовые или символьные значения, составляющие основное содержание БД. Обход всех элементов иерархической БД обычно производится сверху вниз и слева направо.

Сетевая модель данных позволяет отображать разнообразные взаимосвязи элементов данных в виде произвольного графа, обобщая тем самым иерархическую модель данных. Сетевая БД состоит из набора записей и набора соответствующих связей.

Реляционная модель данных предложена сотрудником фирмы IBM Эдгаром Коддом и основывается на понятии отношение (relation) [15].Отношение представляет собой множество элементов, называемых кортежами. Наглядной формой представления отношения является привычная для человеческого восприятия двумерная таблица. Таблица имеет строки (записи) и столбцы (колонки). Каждая строка таблицы имеет одинаковую структуру и состоит из полей. Строкам таблицы соответствуют кортежи, а столбцам - атрибуты отношения.

Постреляционная модель данных представляет собой расширенную реляционную модель, снимающую ограничение неделимости данных, хранящихся в записях таблиц. Постреляционная модель данных допускает многозначные поля - поля, значения которых состоят из подзначений. Набор значений многозначных полей считается самостоятельной таблицей, встроенной в основную таблицу.

Многомерные СУБД являются узкоспециализированными СУБД, предназначенными для интерактивной аналитической обработки информации. Раскроем основные понятия, используемые в этих СУБД: агрегируемость, историчность и прогнозируемость данных.

Агрегируемость данных означает рассмотрение информации на различных уровнях ее обобщения. В информационных системах степень детальности представления информации для пользователя зависит от его уровня: аналитик, пользователь-оператор, управляющий, руководитель.

Историчность данных предполагает обеспечение высокого уровня статичности (неизменности) собственно данных и их взаимосвязей, а также обязательность привязки данных ко времени.

Статичность данных позволяет использовать при их обработке специализированные методы загрузки, хранения, индексации и выборки.

Временная привязка данных необходима для частого выполнения запросов, имеющих значения времени и даты в составе выборки. Необходимость упорядочения данных по времени в процессе обработки и представления данных пользователю накладывает требования на механизмы хранения и доступа к информации. Так, для уменьшения времени обработки запросов желательно, чтобы данные всегда были отсортированы в том порядке, в котором они наиболее часто запрашиваются.

Прогнозируемость данных подразумевает задание функций прогнозирования и применение их к различным временным интервалам.

Многомерность модели данных означает не многомерность визуализации цифровых данных, а многомерное логическое представление структуры информации при описании и в операциях манипулирования данными.

В объектно-ориентированной модели при представлении данных имеется возможность идентифицировать отдельные записи базы. Между записями базы данных и функциями их обработки устанавливаются взаимосвязи с помощью механизмов, подобных соответствующим средствам в объектно-ориентированных языках программирования.

Система управления базами данных (СУБД)- это комплекс языковых и программных средств, предназначенный для создания, ведения и совместного использования баз, данных многими пользователями [23]. Обычно СУБД различают по используемой модели данных . Так, СУБД, основанные на использовании реляционной модели данных, называют реляционными СУБД.

Система управления базой данных представляет собой программное обеспечение, которое управляет доступом к базе данных. Это происходит следующим образом:

)пользователь выдает запрос на доступ, применяя определенный подъязык данных;

)СУБД перехватывает этот запрос и анализирует его;

)затем СУБД пересматривает внешнюю схему для этого пользователя, соответствующее отображение (внешний- концептуальный), концептуальную схему, отображение концептуальный - внутренний и определение структуры хранения;

)СУБД выполняет необходимые операции над хранимой базой данных;

Функции СУБД:

определения данных. СУБД должна допускать определения данных (внешние схемы, концептуальную схему, внутреннюю схему, а также все связанные отображения) в исходной форме и преобразовывать эти определения в форму соответствующих объектов. Иначе говоря, СУБД должна включать в себя компонент языкового процессора для различных языков определений данных. СУБД должна также «понимать» синтаксис языка определений данных;

обработка данных. СУБД должна уметь обрабатывать запросы пользователя на выборку, изменение или удаление существующих данных в базе данных или на добавление новых данных в базу данных. Таким образом, СУБД должна включать в себя компонент процессора языка обработки данных;

безопасность и целостность данных. СУБД должна контролировать пользовательский запросы и пресекать попытки нарушения правил безопасности и целостности, определенные АБД;

восстановление данных и дублирование. СУБД или другой связанный с ней программный компонент, обычно называемый администратором транзакции, должны осуществлять необходимый контроль над восстановлением данных и дублированием;

словарь данных. СУБД должна обеспечить функцию словаря данных. Сам словарь данных можно по праву считать базой данных. Словарь «содержит данные о данных» то есть определения других объектов системы, не просто «сырые данные». Расширенный словарь будет включать также перекрестные ссылки, показывающие, какие из программ какую часть базы данных используют, какие отчеты требуются тем или иным пользователям, какие терминалы подключены к системе. Словарь может быть интегрирован в определяемую им базу данных, а значит, должен содержать описание самого себя;

производительность СУБД должна выполнять все указанные функции с максимально возможной эффективностью.

Администратор базы данных есть лицо или группа лиц, отвечающих за выработку требований к базе данных, ее проектирование, создание, эффективное использование и сопровождение. В процессе эксплуатации администратор базы данных следит за функционированием информационной системы, обеспечивает защиту от несанкционированного доступа, контролирует избыточность, непротиворечивость, сохранность и достоверность хранимой в БД информации.


1.2 Обзор существующих систем управления базами данных


Система управления базами данных Oracle. Физически база данных Oracle - не более чем набор файлов где-то на диске [50]. Расположение этих файлов несущественно для функционирования (хотя важно для производительности) базы данных. Каждая база данных содержит несколько схем данных - это пользовательский раздел Oracle, который идентифицируется именем пользователя (с паролем), уникальным в данной БД.

Существуют четыре основные группы файлов на диске, составляющие базу данных:

1)файлы базы данных - dbf;

2)управляющие файлы - control file;

)журнальные файлы - redo & arch;

)файл настроек oracle - init.ora.

Наиболее важные из них - файлы базы данных, где располагаются собственно данные. Управляющие и журнальные файлы поддерживают функционирование архитектуры. Для доступа к данным БД все три набора файлов должны присутствовать, быть открытыми и доступными Oracle. Если эти файлы отсутствуют, обратиться к базе данных нельзя, и администратор базы данных должен будет восстанавливать часть или всю БД, используя файлы резервных копий . Все эти файлы двоичные.

Система управления базами данных Access. Microsoft Access - это самая популярная сегодня настольная система управления базами данных [1]. Ее успех можно связывать с великолепной рекламной кампанией, организованной Microsoft, или включением его в богатое окружение продуктов семейства Microsoft Office.

СУБД Access для работы с данными использует процессор баз данных Microsoft Jet 3.0, объекты доступа к данным и средство быстрого построения интерфейса - конструктор форм. Для получения распечаток используются Конструкторы отчетов. Автоматизация рутинных операций может быть выполнена с помощью макрокоманд. На тот случай, когда не хватает функциональности визуальных средств, пользователи Access могут обратиться к созданию процедур и функций. При этом как в макрокомандах можно использовать вызовы функций, так и из кода процедур и функций можно выполнять макрокоманды.

Несмотря на свою ориентированность на конечного пользователя, в Access присутствует язык программирования Visual Basic for Application, который позволяет создавать массивы, свои типы данных, вызывать DLL-функции, с помощью OLE Automation контролировать работу приложений, которые могут функционировать как OLE-серверы. Даже можно целиком создавать базы данных с помощью кодирования, когда в этом появляется необходимость.Access из всех рассматриваемых средств разработки имеет, пожалуй, самый богатый набор визуальных средств. Для коммерческого распространения приложений, разработанных на Access, предназначен пакет Access Developer Toolkit, вместе с которым поставляются некоторые дополнения и несколько дополнительных объектов ActiveX.

Главное качество Access, которое привлекает к нему многих пользователей, тесная интеграция с Microsoft Office. К примеру, скопировав в буфер графический образ таблицы, открыв Microsoft Word и применив вставку из буфера, тут же получаем в документе готовую таблицу с данными из БД.

Вся работа с базой данных осуществляется через окно контейнера базы данных. Отсюда осуществляется доступ ко всем объектам, а именно: таблицам, запросам, формам, отчетам, макросам, модулям.

Посредством драйверов ISAM можно получить доступ к файлам таблиц некоторых других форматов: DBASE, Paradox, Excel, текстовым файлам, FoxPro 2.х, а посредством технологии ODBC - и к файлам многих других форматов.может выступать как в роли OLE контролера, так и OLE сервера. Это значит, что можно контролировать работу приложений Access из любого приложения, при условии, что оно может выступать в роли OLE контролера и наоборот.

Встроенный SQL позволяет максимально гибко работать с данными и значительно ускоряет доступ к внешним данным. Пользователям, малознакомым с понятиями реляционных баз данных, Access дает возможность разделять свои сложные по структуре таблицы на несколько, связанных по ключевым полям.

Процесс построения систем обработки данных значительно различается на разных предприятиях и фирмах в зависимости от объема данных, которые они обрабатывают. Естественно, Access - это типичная настольная база данных. В то же время на небольшом предприятии с количеством компьюторов не больше 10, ресурсов Access вполне может хватить для обслуживания всего делопроизводства, естественно, в связке с Microsoft Office. То есть все пользователи могут обращаться к одной базе данных, установленной на одной рабочей станции, которая не обязательно должна быть выделенным сервером. Для того чтобы не возникали проблемы сохранностии доступа к данным, имеет смысл воспользоваться средствами защиты, которые предоставляет Access. При этом можете воспользоваться Мастером, если не уверены, что сами правильно установите права и ограничения для пользователей. В отличие от других рассматриваемых средств разработки, СУБД Access имеет русифицированный интерфейс и частично переведенный на русский язык файл контекстной помощи.

Система управления базами данных SQL Server. Microsoft SQL Server - одна из наиболее мощных СУБД архитектуры клиент-сервер. Эта СУБД позволяет удовлетворять такие требования, предъявляемые к системам распределенной обработки данных, как тиражирование данных, параллельная обработка, поддержка больших баз данных на относительно недорогих аппаратных платформах при сохранении простоты управления и использования.SQL Server представляет собой систему, конечно, плохо сравнимую с рассмотренными выше СУБД. Он не предназначен непосредственно для разработки пользовательских приложений, а выполняет функции управления базой данных. Для пользовательского приложения SQL Server является мощным источником генерации и управления нужными данными.

Сервер имеет средства удаленного администрирования и управления операциями, организованные на базе объектно-ориентированной распределенной среды управления. Microsoft SQL Server входит в состав семейства Microsoft BackOffice, объединяющего пять серверных приложений, разработанных для совместного функционирования в качестве интегрированной системы.SQL Server предназначен исключительно для поддержки систем, работающих в среде клиент-сервер. Он поддерживает широкий спектр средств разработки и максимально прост в интеграции с приложениями, работающими на ПК.Server превосходит предыдущую версию с точки зрения использования многопоточной параллельной архитектуры операционной системы для повышения производительности и масштабируемости, то есть очень эффективно использует возможность ускорения работы в том случае, если на компьютере установлено несколько процессоров.Server имеет новую масштабируемую архитектуру блокировок, называемую динамической блокировкой (Dinamic Locking), которая комбинирует блокировку на уровне страницы и записи для достижения максимальной производительности и подключения максимального числа пользователей.Server может тиражировать информацию в БД иных форматов, включая Oracle, IBM DB2, Sybase, Microsoft Access и другие СУБД (при наличии ODBC драйвера, отвечающего определенным требованиям).

Хранимые процедуры, поддерживающие OLE Automation, позволяют разработчику применять практически любой инструмент из тех, что поддерживают OLE, в целях создания хранимых процедур для SQL Server. Visual Basic 4.0 поддерживается посредством новой 32-разрядной DBLibrary (OCX). Многочисленные расширения языка Transact-SQL включают расширенную поддержку курсоров, возможность использования команд определения данных внутри транзакций и т. д.SQL Server содержит ассистент администратора. Этот инструмент позволяет назначать основные процедуры сопровождения базы данных и определять для них график выполнения. Операции по сопровождению баз данных включают проверку распределения страниц, целостности указателей в таблицах (включая системные) и индексах, обновление информации, необходимой оптимизатору, реорганизацию страниц в таблицах и индексах, создание страховочных копий таблиц и журналов транзакций. Все эти операции могут быть установлены для автоматического выполнения по заданному администратором графику.

Пакет Enterprise Manager включает утилиту, позволяющую переносить некоторые или все объекты из одной базы данных в другую. Используя эту утилиту, разработчик или администратор может:

-выполнять копирование объектов любого типа с указанием, какого типа объекты подлежат копированию (или копировать все объекты всех типов);

-переносить схему базы данных вместе с данными или без них;

-дополнять или замещать существующие данные;

-уничтожать объекты в базе-приемнике перед копированием схемы;

-для копируемого объекта включать объекты, от него зависящие;

-использовать стандартные настройки генерации кода создания/удаления объектов или использовать собственные;

-определять момент выполнения переноса объектов: немедленно, однократно в определенный момент времени, многократно по определенному графику.

Сервер, который получает объекты, должен быть Microsoft SQL Server. Сервер-источник может быть Microsoft SQL Server версии 4.x или 6.x или сервер Sybase.Server предоставляет возможность создания страховочных копий и восстановления индивидуальных таблиц. Загрузка таблицы может быть выполнена либо из копии индивидуальной таблицы, либо из копии базы данных. Загрузка индивидуальных таблиц может оказаться хорошим решением при необходимости восстановления данных после сбоя, когда загрузка всей базы данных неэффективна. Тем не менее создание страховочных копий всей базы данных и журнала транзакций остаются основой стратегии резервного копирования. Для эффективной работы с данными SQL Server имеет целый набор специальных инструментов.

Система управления базами данных My SQL. MySQL - свободная <#"justify">Система управления базами данных Visual FoxPro. Visual FoxPro - не просто следующая версия одной из наиболее быстрых СУБД для персональных компьютеров. Это совершенно новая программа, которая позволяет легко сделать то, что в предыдущих версиях давалось с величайшим трудом или было просто недоступно.

Интерфейс Visual FoxPro отвечает представлениям о современной графической среде, напоминая интерфейс иных программ Microsoft, делает работу интуитивно понятной. Основная работа с данными в Visual FoxPro выполняется с помощью различных инструментальных средств, поэтому команды меню часто имеют вспомогательный характер и их состав гибко меняется в зависимости от того, какое средство активно в данный момент. Отличительные черты Visual FoxPro можно описать следующим образом:

) обеспечение возможности быстрой разработки прикладной программы базируется на включении средств, которые позволяют повысить скорость работы программиста. В первую очередь это средства объектно-ориентированного программирования, позволяющие пользователю формировать компоненты своего проекта (объекты), которые затем могут многократно использоваться. В связи с этим, традиционный Xbase язык в Visual FoxPro 3.0 значительно расширен, что позволяет создавать истинные объекты, классы и подклассы. Кроме того, объекты могут быть созданы с помощью визуальных средств и многократно использоваться в любое время;

) обеспечение полного набора средств для управления событиями. Традиционно в Xbase от программиста требовалось написать собственный драйвер для обработки необходимого набора событий или положиться на READ-состояние ожидания, которое моделирует обработку события системой. В Windows число событий, к которым может обращаться пользователь, весьма велико, и, следовательно, обработка событий является непростой задачей. Visual FoxPro 3.0 имеет истинно управляемую событиями модель, так что по умолчанию система раньше, чем пользователи, обрабатывает объектные события. Кроме того, программист теперь имеет полный доступ к набору стандартных, основанных на функционировании Windows событий (например, движения мыши, которые допускают перетаскивание объектов);

) обеспечение мощного набора инструментальных средств для программиста. Разработчики систем автоматизации обработки данных кроме мощного набора визуальных средств проектирования могут использовать широкие возможности по интеграции систем хранения данных и доступа к серверам данных с помощью технологии ODBC. Основные новшества - это расширение встроенного языка SQL, возможность обновления данных на сервере через редактирование курсоров, встроенный механизм обеспечения транзакций, возможность обращения к серверу на том диалекте SQL, который поддерживает сервер.

Наличие словаря данных делает более быстрой разработку структуры баз данных и облегчает ее дальнейшую эксплуатацию и поддержку;

) обеспечение полной интеграции Visual FoxPro 3.0 в семейство прикладных программ Microsoft. Единый интерфейс с наиболее популярными прикладными программами Microsoft делает работу в интерактивном режиме интуитивно понятной. Поддержка правой кнопки мыши позволяет избежать долгих путешествий по системе меню и значительно облегчает изучение новых возможностей СУБД. Просто выберите курсором объект и нажмите правую кнопку мыши. На некоторых диалоговых окнах, которые часто используются в работе на полосе заголовка, появился переключатель в виде анимационной пиктограммы (push pin), позволяющий легко включить режим, при котором это окно будет всегда расположено на переднем плане. Visual FoxPro обеспечивает полную поддержку OLE 2.0, что облегчает взаимодействие с другим программным обеспечением в среде Windows. Помимо оставшейся возможности загрузки внешних функций посредством команды SET LIBRARY появилась возможность обращения к функциям динамических DLL библиотек Windows посредством команды DECLARE;

) совместимость с ранее разработанным программным обеспечением в среде FoxPro.

В Visual FoxPro система организации данных наиболее близка к теоретическим основам реляционной модели и позволяет более естественно выполнять операции реляционной алгебры.

Основная единица хранения данных - это таблица, в столбцах и строках которой хранятся данные, как это и было раньше в DBF-файле. Таблица сохранила расширение файла DBF и имеет прямую совместимость со "старыми" DBF-файлами. Таблицы объединяются в базу данных, в которой можно описать все связи, устанавливаемые между полями отдельных таблиц, правила проверки, которые будут определять реакцию системы на вносимые изменения, добавление или удаление данных и правила проверки целостности данных в БД. Файлы баз данных имеют расширение DBC и при открытии автоматически поддерживают все перечисленные установки для входящих в нее таблиц. При необходимости можно иметь и таблицы, не входящие в БД, - свободные таблицы.FoxPro обеспечивает поддержку значений NULL и выполнение операций с этими данными в соответствии со стандартом ANSI. Это облегчает задачу представления неизвестных данных и взаимодействие с MS Access и базами данных SQL, которые могут содержать такие типы значений.

Таким образом, база данных в Visual FoxPro - это основной элемент организации данных, который, помимо формирования структуры представления информации, выполняет функции словаря данных за счет поддержки следующих функциональных возможностей:

-допускаются длинные имена таблиц;

-каждому полю и таблице можно давать комментарии;

-допускается использование длинных имен полей;

-для полей помимо идентификаторов можно использовать заголовки, которые могут использоваться как в окне Browse, так и в качестве заголовков для колонок в объекте Grid;

-введены значения по умолчанию для полей;

-предусмотрены правила проверки для полей и записей при изменении и вводе новых данных;

-имеются триггеры для поддержания целостности данных;

-поддерживаются постоянные связи между таблицами, размещенными в БД;

-имеются процедуры БД для описания сложных условий правил проверки;

-можно использовать соединения для связи с внешними источниками данных;

-поддерживаются локальные и внешние просмотры.

Основным средством редактирования данных в оболочке FoxPro являются полноэкранные средства Browse и Edit (Change). Browse позволяет редактировать данные в наиболее привычном для пользователя виде - табличном, а Edit - в виде колонки полей.FoxPro 3.0 продолжает поддерживать стандартное процедурное программирование Xbase, и при желании можно не обращать внимания ни на какую "объектность", однако новые расширения языка дают пользователям мощность и гибкость объектно-ориентированного программирования, что предопределяет всю логику и методику разработки прикладной программы.

Вместо того чтобы ломать голову над программой, начиная с первой строки кода, программист может и должен думать о создании объектов - компонентов прикладной программы.

Классы и объекты- два фундаментальных понятия объектно-ориентированного программирования. Класс содержит информацию о том, как объект должен выглядеть и вести себя. Другими словами, класс - это прообраз объекта. Visual FoxPro 3.0 дает возможность пользователям создавать объекты как с помощью визуальных средств, так и программно на основании базовых классов. Для описания объекта используется набор свойств. Эти свойства объект получает из соответствующего класса, на основании которого он создан. Если нужен объект, имеющий свойства, отличные от свойства его класса, нужно создать подкласс с измененными свойствами и уже его использовать для создания объекта.

Для описаний действий, выполняемых объектом, используются методы, то есть процедуры и функции, объявленные внутри класса и непосредственно с ним связанные. Методы легко координируются с событиями, происходящими при работе программы. Главное преимущество для разработчика здесь заключается в том, что привязанные к событию методы выполняются автоматически и у нас даже есть возможность принудительно вызвать какое-то событие.

Прикладная программа, разработанная в СУБД FoxPro, может иметь достаточно сложную структуру и включать значительное количество файлов различного типа.

Технология ADO.net. Технология ADO.NET предназначена для обеспечения доступа к данным в слабо связанных и уровневых архитектурах приложений, включая веб-службы. ADO.NET позволяет обращаться к разнообразным источникам данных, включая базы данных (Microsoft SQL Server, Oracle, Microsoft Access) и другие источники данных (Microsoft Excel, Outlook, текстовые файлы).

Для подключения к источнику данных, выполнения команд и получения результатов используется поставщик данных .NET. В комплект поставки .NET Framework входят четыре поставщика данных .NET: для Microsoft SQL Server, Oracle, OLE DB и ODBC.

Существуют и другие поставщики данных. В частности, корпорация Oracle разработала собственный поставщик данных .NET для баз данных Oracle. Имеются также поставщики данных для таких баз данных, как Sybase и MySQL. Поставщики, предназначенные для конкретного типа баз данных, обычно обращаются к соответствующему хранилищу данных напрямую и предлагают самую высокую производительность, самый широкий диапазон функций и доступ к специфическим возможностям базы данных. Поскольку от поставщика данных требуется лишь реализовать набор стандартных интерфейсов, возможности и характеристики поставщиков, работающих с одним и тем же источником данных, могут значительно различаться.

Помимо поставщиков, предназначенных для конкретного типа баз данных, имеется поставщик данных .NET для OLE DB, который обеспечивает доступ к большинству источников данных OLE DB через поставщиков OLE DB. Аналогичным образом поставщик данных .NET для ODBC использует драйверы ODBC для доступа к большинству источников данных ODBC. Можно также разработать собственный поставщик данных для доступа к проприетарным источникам данных или для удовлетворения особых требований,

ADO.NET фундаментальным образом отличается от своего предшественника ADO, несмотря на схожесть названий. В основе набора классов ADO.NET лежит отсоединенная архитектура, и в его составе есть как соединенные, так и отсоединенные классы. Каждый поставщик данных обязан предоставлять следующие соединенные классы:

-Connection (подключение) - уникальный сеанс работы с источником данных;

-Command (команда) - выполняет SQL-операторы и хранимые процедуры над источником данных;

-DataReader (считыватель данных) - предоставляет последовательный доступ только для чтения к потоку результатов запроса;

-DataAdapter (адаптер данных) - выполняет роль моста между соединенными и отсоединенными классами; служит также для наполнения отсоединенного набора данных (DataSet) и внесения изменений в источник данных, сделанных в отсоединенном наборе данных.

Другой разновидностью классов ADO.NET в .NET Framework являются отсоединенные классы. Они предоставляют единообразную программную модель, не зависящую от источника или поставщика данных. Отсоединенные классы включают:

-DataSet (набор данных) - функционирующая в оперативной памяти реляционная база данных;

-DataTable (локальная таблица) - отдельная таблица данных, располагающаяся в оперативной памяти;

-DataColumn (столбец) - схема столбца локальной таблицы;

-Data Row (строка) - строка в локальной таблице;

-Data View (представление) - представление локальной таблицы с возможностью привязки данных, используемое для пользовательской сортировки, фильтрации, поиска, редактирования и навигации;

-DataRelation (связь) - связь «родитель/потомок» между двумя таблицами в наборе данных;

-Constraint (ограничение) - ограничение на один или несколько столбцов в локальной таблице, служащее для поддержания целостности данных.

Набор данных не содержит информации об источнике данных, из которого он наполнялся. В нем хранятся как текущая, так и исходная версии данных, что позволяет внести изменения в источник данных позднее. Отсоединенные классы обеспечивают независимое от способа транспортировки проведение данных по вертикали между уровнями приложения и по горизонтали - между распределенными приложениями, а также фиксацию данных.

В .NET стираются границы между ADO.NET и XML. Можно сохранять набор данных как XML-документ и наполнять его данными из XML-документа. Можно обращаться к данным и изменять их одновременно с применением классов набора данных и XML.


2. ПРОЕКТИРОВАНИЕ И СОЗДАНИЕ БАЗЫ ДАННЫХ И ПРОГРАММНАЯ РЕАЛИЗАЦИЯ КЛИЕНТСКОГО ПРИЛОЖЕНИЯ


Проектирование БД - структурированный подход, предусматривающий использование специализированных процедур, технических приемов, инструментов, документации и ориентированный на поддержку и упрощение процесса проектирования.

Проектирование предусматривает разбиение всего процесса на несколько стадий, каждая из которых, в свою очередь, состоит из нескольких этапов. На каждом этапе разработчику предлагается набор технических приемов, позволяющих решать задачи, стоящие перед ним на данной стадии разработки.

Кроме того, предлагается методы планирования, координации, управления, оценки хода разработки проекта, а также структурированный подход к анализу и моделированию всего набора требований, предъявляемых к базе данных, и позволяет выполнить эти действия стандартизированным и организованным образом.


2.1 Концептуальное проектирование


Концептуальное проектирование - конструирование информационной модели предприятия, не зависящей от каких-либо физических условий реализации.

Концептуальное проектирование базы данных начинается с создания концептуальной модели данных предприятия, полностью независимой от любых деталей реализации. К последним относятся:

-выбранный тип СУБД;

-состав программ приложения;

-используемый язык программирования (Visual C#);

-конкретная аппаратная платформа (процессор PIV и AMD с тактовой частотой не ниже 1800 Гц, оперативная память 512 Мб, дисплей 17" с разрешением 1024х768х72);

-вопросы производительности и любые другие физические особенности реализации.

На первом этапе проектирования базы данных должна быть разработана концептуальная модель данных для каждого представления, охватывающего предметную область данного предприятия, такая модель данных называется локальной концептуальной моделью данных для рассматриваемого представления.

В процессе анализа необходимо выявить все пользовательские представления, которые требуются для разрабатываемого приложения, и предусмотреть возможность объединения некоторых представлений для создания обобщенного представления, обозначенного соответствующим идентификатором, в зависимости от степени перекрытия отдельных представлений.

Каждая локальная концептуальная модель данных состоит из следующих компонентов:

-типы сущностей;

-типы связей;

-атрибуты и домены атрибутов;

-первичные ключи;

-альтернативные ключи;

-ограничения целостности.

На этапе концептуального проектирования рассматривается информация о клиентах и информация о дисках, имеющихся в прокате. У клиентов указываются их данные: Ф.И.О., прописка, номер телефона.

Для дисков указывается следующая информация: название фильма, режиссер, жанр, звук, продолжительность, субтитры, язык, описание. С помощью этих данных можно отследить у какого клиента, в каком количестве и с какого времени находятся определенные диски.


2.2 Логическое проектирование


Логическое проектирование - конструирование информационной модели предприятия на основе существующих конкретных моделей данных, но без учета используемой СУБД и прочих физических условий реализации.

Логическое проектирование базы данных заключается в преобразовании концептуальной модели данных в логическую модель данных предприятия с учетом выбранного типа СУБД. Логическая модель данных является источником информации для этапа физического проектирования. Она предоставляет разработчику физической модели данных средства проведения всестороннего анализа различных аспектов работы с данными, что имеет исключительно важное значение для выбора действительно эффективного проектного решения.

Осуществление второго этапа начинается с устранения особенностей концептуальной модели, которые не могут быть непосредственно представлены в реляционной модели (таких как связи "многие ко многим"). Но эта операция рассматривается как необязательная, поскольку она служит для упрощения следующих этапов, на которых модель преобразуется в набор отношений. Тем не менее, в этом разделе показано, как преобразовать связи "многие ко многим" непосредственно в набор отношений, если устранение этих связей из логической модели нецелесообразно. Затем полученные отношения проверяются с использованием методов нормализации. Здесь также проверяется каждая логическая модель данных для определения того, поддерживает ли она все требуемые пользовательские транзакции. Процесс преобразования и проверки повторяется до тех пор, пока не будет создана локальная логическая модель данных для каждого представления. Если в приложении имеется только одно представление, то на этом этап логического проектирования базы данных завершается. А если имеется несколько представлений, то выполняется дополнительный этап, на котором происходит слияние локальных логических моделей данных для создания глобальной логической модели данных, соответствующей всем пользовательским представлениям в данной организации. При описании методологии проектирования вместо терминов тип сущности и тип связи применяются термины сущность и связь, если их смысл является очевидным. На этом этапе каждая локальная концептуальная модель данных, созданная на этапе , преобразуется в локальную логическую модель данных, состоящую из ER-диаграммы реляционной схемы и сопроводительной документации. Для упрощения этого процесса предусмотрен этап, на котором происходит устранение особенностей, которые не могут быть представлены непосредственно в реляционной модели (таких как связи "многие ко многим"). Полученная реляционная схема проверяется с использованием правил нормализации для определения того, является ли ее структура правильной. Проверяется также логическая модель, что позволяет убедиться в том, что она поддерживает все транзакции, указанные в спецификации требований пользователя. Проверенная локальная логическая модель данных может применяться в качестве основы для разработки прототипов, если в этом есть необходимость. Наконец, в модель вводятся ограничения целостности. По завершении этого этапа должна быть получена правильная, полная и непротиворечивая модель представления. На этой стадии выполняются следующие этапы:

-исключение особенностей, не совместимых с реляционной моделью;

-формирование отношений на основе локальной логической модели данных;

-проверка отношений с использованием средств нормализации.


Рисунок 1 - Таблица Схема данных


На этапе логического проектирования строится схема данных, где показывается связь между конкретными пунктами таблиц. Таким образом в таблице Диски и таблице Прокат проведена связь между пунктами ID диска. В таблицах Прокат и Клиенты проведена связь между пунктами ID клиента. В таблицах Клиенты и Штрафы также проведена связь между пунктами ID клиента. Между таблицами Штрафы и Тарифы и санкции проведена связь между пунктами ID тарифа.


.3 Физическое проектирование


Физическое проектирование - описание конкретной реализации базы данных, размещаемой во внешней памяти. Физический проект описывает базовые отношения, определяет организацию файлов и состав индексов, применяемых для обеспечения эффективного доступа к данным, а также регламентирует все соответствующие ограничения целостности и меры защиты.

Физическое проектирование базы данных предусматривает принятие окончательного решения о способах реализации создаваемой базы. Поэтому физическое проектирование обязательно производится с учетом всех особенностей используемой СУБД. Между этапами физического и логического проектирования всегда имеется определенная обратная связь, поскольку решения, принятые на этапе физического проектирования с целью повышения производительности разрабатываемой системы, могут потребовать определенной корректировки логической модели данных.

Отправной точкой проводимого в данной главе обсуждения является глобальная логическая модель данных и сопроводительная документация, созданные на первом-втором этапах предлагаемой методологии проектирования баз данных. Их создание начиналось с преобразования локальных концептуальных моделей данных для каждого представления на этапе 1 и подготовки локальных логических моделей данных для каждого представления на этапе 2, которые впоследствии использовались для разработки набора соответствующих отношений. Полученные наборы отношений были проверены на соответствие требованиям правил нормализации и возможность выполнения необходимых транзакций. Этап логического проектирования базы данных завершился процедурой соединения локальных логических моделей данных, отражающих представления отдельных пользователей, в единую глобальную логическую модель данных, которая соответствует всем пользовательским представлениям организации.

В соответствии с предлагаемой методологией, в ходе третьей и последней стадии методологии разработки базы данных должно приниматься решение о том, как преобразовать логический проект базы данных (т.е. совокупность сущностей, атрибутов, связей и установленных ограничений) в проект физической базы данных, реализуемой в среде выбранной целевой СУБД. Поскольку многие аспекты физического проектирования баз данных зависят от типа выбранной целевой СУБД, возможно существование нескольких способов реализации любого заданного элемента базы данных.

Стадия, предшествующая физическому проектированию, называется стадией логического проектирования. Результаты ее выполнения в значительной степени независимы от особенностей физической реализации проекта. При логическом проектировании не принимаются во внимание конкретные функциональные возможности целевой базы данных и прикладных программ, однако учитываются особенности выбранной модели данных. Результатом логического проектирования являются глобальная логическая модель данных, состоящая из ER-диаграммы или диаграммы отношений, а также реляционной схемы, и комплект описывающей ее сопроводительной документации, включающий, в частности, словарь данных. В совокупности эти результаты являются исходной информацией для стадии физического проектирования базы данных и предоставляют ее разработчику все необходимое для принятия решений, направленных на достижение максимальной эффективности создаваемого проекта.

Физическое проектирование базы данных - процесс подготовки описания реализации базы данных внешней памяти. Описание должно включать основные отношения, файловую организацию, индексы, обеспечивающие эффективный доступ к данным, а также все соответствующие ограничения целостности и средства защиты.

Физическое проектирование базы данных включает следующие этапы:

-перенос глобальной логической модели данных в среду целевой СУБД;

-проектирование основных отношений;

-проектирование физического представления базы данных;

-выбор файловой структуры;

-проектирование пользовательских представлений.

Этап стадии физического проектирования включает разработку основных отношений и реализацию ограничений предметной области с использованием доступных функциональных средств целевой СУБД, На этом этапе должно быть также принято решение по выбору способов получения производных данных, которые включены в модель данных.

Этап включает выбор файловой организации и индексов для основных отношений. Как правило, СУБД для персональных компьютеров имеют фиксированную структуру внешней памяти, а другие СУБД предоставляют несколько альтернативных вариантов файловой организации для хранения данных. С точки зрения пользователя организация внутренней структуры хранения отношений должна быть совершенно прозрачной - пользователь должен иметь возможна получать доступ к любому отношению и к отдельным его строкам без учета способа хранения данных. Это означает, что СУБД должна обеспечивать полную независимость физического хранения данных от их логической организации. Только в этом случае внесение изменений в физическую организацию базы данных не окажет никакого влияния на работу пользователей. Соответствие между логической моделью данных и физической моделью данных определяется внутренней схемой базы данных. Разработчик должен предоставить подробные физические проекты базы данных с учетом применяемой СУБД и операционной системы. В проекте реализации базы данных в СУБД разработчик должен определить структуры файлов, которые будут использоваться для представления каждого отношения. В проекте реализации базы данных в операционной системе разработчик должен указать расположение отдельных файлов и обеспечить необходимую их защиту. Необходимо принять решение о том, как должно быть реализовано каждое пользовательское представление. Спроектировать средства защиты, необходимые для предотвращения несанкционированного доступа к данным, включая управление доступом к основным отношениям. Проанализировать необходимость снижения уровня требований нормализации данных в логической модели, что может способствовать повышению общей производительности системы. Однако эти действия следует предпринимать только в случае реальной необходимости, поскольку введение в базу данных избыточности неизбежно вызовет появление проблем с поддержанием целостности данных. Для создания базы данных в СУБД Access необходимо выполнять следующие действия :


Рисунок 2 - Создание базы данных


В представленном диалоговом окне выбрать пункт: Новая База Данных, дать ей название, нажать кнопку Создать.


Рисунок 3 - Создание таблицы


На панели управления необходимо выбрать меню вид , далее выбрать конструктор , дать название таблице, выбрать тип данных. Затем необходимо дать название полям и заполнить таблицу необходимыми данными.

СУБД Access использует данные следующих типов:

)текстовый (символьный);

)числовой;

)дата\время;

)логический;

)денежный;

)счетчик, используемый для определения ключа;

)поля типа объекта OLE, которые используются для хранения рисунков, графиков, таблиц;

)поле MEMO;

)гиперссылка или подсказка.


Рисунок 4 - Таблица Диски


В полученной таблице Диски указывается количество дисков и справочная информация о них.

Таблица имеет следующие поля:

1)ID диска- поле имеет текстовый тип данных;

)название фильма- поле имеет текстовый тип данных;

)режиссёр- поле имеет текстовый тип данных;

)жанр- поле имеет текстовый тип данных;

)звук- поле имеет текстовый тип данных;

)изображение- поле имеет текстовый тип данных;

)субтитры- поле имеет текстовый тип данных;

)язык- поле имеет текстовый тип данных;

)продолжительность- поле имеет текстовый тип данных;

)описание- поле имеет тип данных MEMO.


Рисунок 5 - Таблица Клиенты


В таблице Клиенты указывается информация о клиентах. Эта таблица имеет следующие поля:

1)ID клиента- поле имеет текстовый тип данных;

)Ф.И.О клиента- поле имеет текстовый тип данных;

)Прописка- поле имеет текстовый тип данных;

)Телефон- поле имеет текстовый тип данных.


Рисунок 6 - Таблица Прокат


В полученной таблице Прокат имеются следующие поля:

1)ID диска- поле имеет текстовый тип данных;

2)ID клиента- поле имеет текстовый тип данных;

)дата выдачи- поле имеет текстовый тип данных;

)дата возврата- поле имеет текстовый тип данных;

)возврат- поле имеет текстовый тип данных.


Рисунок 7 - Таблица Тарифы и санкции


В таблице Тарифы и санкции указывается одна тарифная сетка равная 50 рублям за сутки, эта таблица имеет следующие поля:

1)ID тарифа- поле имеет текстовый тип данных;

)тариф- поле имеет текстовый тип данных;

)штраф-. поле имеет текстовый тип данных.


Рисунок 8 - Таблица Штрафы


В таблице Штрафы указывается:ID клиента,ID тарифа, количество дней, сумма, оплата, итог. Эта таблица позволяет произвести расчет суммы долга конкретного клиента. В данной таблице все поля имеют текстовый тип данных.


2.4 Обзор языков программирования


Язык программирования С++. Язык возник в начале 1980-х годов <#"justify">-получить универсальный язык со статическими типами данных, эффективностью и переносимостью языка C;

-непосредственно и всесторонне поддерживать множество стилей программирования, в том числе процедурное программирование <#"justify">-никакое языковое средство не должно приводить к снижению производительности программ, не использующих его;

-не требовать слишком усложнённой среды программирования.

Стандарт C++ на 2003 год <#"justify">-символьные: char, wchar_t;

-целочисленные знаковые: signed char, short int, int, long int.;

-целочисленные беззнаковые: unsigned char, unsigned short int, unsigned int, unsigned long int;

-с плавающей точкой: float, double, long double;

-логический: bool, имеющий значения true и false.

Операции сравнения возвращают тип bool. Выражения в скобках после if, while приводятся к типу bool.

Функции могут принимать аргументы по ссылке. Например, функция void f(int &x) {x=3;} присваивает своему аргументу значение 3. Функции также могут возвращать результат по ссылке, и ссылки могут быть вне всякой связи с функциями. Например, {double &b=a[3]; b=sin(b);} эквивалентно a[3]=sin(a[3]);. Ссылки в определённой степени сходны с указателями, со следующими особенностями: перед использованием ссылка должна быть инициализирована; ссылка пожизненно указывает на один и тот же адрес; в выражении ссылка обозначает непосредственно тот объект или ту функцию, на которую она указывает, обращение же к объекту или функции через указатель требует разыменование указателя. Существуют и другие отличия в использовании указателей и ссылок.

Язык программирования С#. C# (произносится си-шарп)- объектно-ориентированный <#"justify">Главной особенностью языка C# является его ориентированность на платформу Microsoft .NET - создатели C# ставили своей целью предоставление разработчикам естественных средств доступа ко всем возможностям платформы .NET. Видимо, это решение можно считать более или менее вынужденным, так как платформа .NET изначально предлагала значительно большую функциональность, чем любой из существовавших на тот момент языков программирования.

Кроме того, создатели С# хотели скрыть от разработчика как можно больше незначительных технических деталей, включая операции по упаковке/распаковке типов, инициализации переменных и сборке мусора. Благодаря этому программист, пишущий на C#, может лучше сконцентрироваться на содержательной части задачи. В процессе решения этой задачи проектировщики C# пытались учесть уроки реализации Visual Basic, который достаточно успешен в скрытии деталей реализации, но недостаточно эффективен для написания крупных промышленных систем: создатели C# декларируют, что новый язык обладает мощностью С++ и в то же время простотой Visual Basic.

Еще одно преимущество создания нового языка программирования по сравнению с расширением существующих заключается в том, что при создании нового языка нет необходимости заботиться о проблемах обратной совместимости, которые обычно заметно затрудняют исправление застарелых проблем и даже внесение новых свойств в стандарт языка

Таким образом, C# представляет собой новый язык программирования, ориентированный на разработку для платформы .NET и пригодный как для быстрого прототипирования приложений, так и для разработки крупномасштабных приложений.

Многие существующие языки программирования обладают весьма запутанным синтаксисом и конструкциями с неочевидной семантикой - достаточно вспомнить сверхперегруженную значениями открывающую фигурную скобку в С++, использование ключевых слов в качестве идентификаторов в PL/I или проблемы отличия описателей видов от операций в Алголе 68. Все эти языковые особенности затрудняют написание компиляторов и служат источником труднонаходимых ошибок при создании программ. На другом полюсе этой проблемы находится язык Паскаль, в котором в целях упрощения было решено пожертвовать даже очевидно удобными для программиста свойствами.# занимает некоторую промежуточную позицию: из стандарта языка убраны наиболее неприятные и неоднозначные особенности С++, но в то же время язык сохранил мощные выразительные возможности, присущие для таких языков, как С++, Java или VB.

Некоторые особенности языка С++, которые не поддерживаются C#:

-по умолчанию, С# запрещает прямое манипулирование памятью, предоставляя взамен богатую систему типов и сборку мусора. Непосредственная работа с памятью по-прежнему доступна в специальном режиме "опасного" кода , но требует явного декларирования. Как следствие, в C# активно используется всего один оператор доступа ".";

-преобразования типов в C# значительно строже, чем в С++, в частности, большинство преобразований может быть совершено только явным образом. Кроме того, все приведения должны быть безопасными (т.е. запрещены неявные преобразования с переполнением, использование целых переменных как указателей и т.п.). Естественно, это заметно упрощает анализ типов при компиляции;

-одной из типичных ошибок в С++ было отсутствие оператора break при обработке одной из веток оператора switch . Проблема "провала" (fall-through) в C# решена кардинальным образом: компилятор требует наличия явного оператора перехода ( break или goto case <name>) в любой ветке;

-в C#, как и в Java, нет множественного наследования, вместо него предлагается использовать реализацию нескольких интерфейсов. Несмотря на то, что мнения по поводу множественного наследования сильно разнятся, отсутствие этого механизма в C# должно по крайней мере облегчить разработку компилятора.

Проект C# был начат в декабре 1998 и получил кодовое название COOL (C-style Object Oriented Language). Версия 1.0 была анонсирована вместе с платформой .NET в июне 2000 года <#"justify">Новые возможности в версии 2.0:

-частичные типы (разделение реализации класса более чем на один файл <#"justify">-поддержка 64-разрядных вычислений, что кроме всего прочего, позволяет увеличить адресное пространство и использовать 64-разрядные примитивные типы данных.

В июне 2004 года Андерс Хейлсберг впервые рассказал на сайте Microsoft о планируемых расширениях языка в C#3.0. В сентябре 2005 года вышли проект спецификации C# 3.0 и бета-версия C# 3.0, устанавливаемая в виде дополнения к существующим Visual Studio 2005 и .NET 2.0. Окончательно эта версия языка вошла в Visual Studio 2008 и .NET 3.5.

В C# 3.0 появились следующие радикальные добавления к языку:

-ключевые слова select, from, where, позволяющие делать запросы из SQL <#"justify">Customer c = new Customer(); c.Name = "James";

можно записать как

Customer c = new Customer { Name = "James" };

-лямбда-выражения <#"justify">listOfFoo.Where(delegate(Foo x) { return x.size > 10; });

можно записать как

listOfFoo.Where(x => x.size > 10);

-деревья выражений

лямбда-выражения теперь могут представляться в виде структуры данных, доступной для обхода во время выполнения, тем самым позволяя транслировать строго типизированные C#-выражения в другие домены (например, выражения SQL).

-вывод типов <#"justify">-автоматические свойства: компилятор сгенерирует закрытое (private) поле и соответствующие аксессор и мутатор для кода вида

public string Name { get; private set; }

Если C# 3.0 совместить с C# 2.0 по генерируемому MSIL <#"justify">Bозможность использования позднего связывания, для использования:

-с языками с динамической типизацией (Python <#"justify">-именованные и опциональные параметры;

-новые возможности COM interop;

-ковариантность и контрвариантность;

-контракты в коде <#"justify">Существует несколько реализаций C#:

-реализация C# в виде компилятора csc.exe включена в состав .NET Framework <#"justify">1)быть простым в использовании для начинающих

2)быть языком программирования общего назначения

)предоставлять возможность расширения функциональности, доступную опытным программистам

)быть интерактивным

)предоставлять ясные сообщения об ошибках

)быстро работать на небольших программах

)не требовать понимания работы аппаратного обеспечения

)защищать пользователя от операционной системы

Язык был основан частично на Фортран <#"justify">Объединение и скрытие объектных данных, а также обрабатывающих их методов внутри конкретного класса от пользователя называется инкапсуляцией.

При создании новых объектов получить все свойства и методы от своих предков называют наследованием. Такие объекты наследывают после своего создания все поля, свойства, события, методы и прочее от своих предков. Наследование часто избавляет разработчиков от рутинной работы и позволяет не мешкая приступить к разработке чего-то нового.

Это методы различных объектов, которые могут иметь одинаковые имена, но по внутреннему содержимому отличаются друг от друга.

Обрабатываемые в программе данные подразделяются на переменные, константы и литералы. Константы представляют собой данные, значения которых установлены в разделе объявления констант и не изменяются в процессе выполнения программы.

Объекты как экземпляры класса объявляются в программе в разделе var как обычные переменные.

Для обращения к конкретному элементу объекта (полю; свойству или методу) указывается имя объекта и имя элемента, разделенные точкой, то есть имя элемента является составным.

В языке Object Pascal классы - это специальные типы данных, используемые для описания объектов. Соответственно объект, имеющий тип какого-либо класса, является экземпляром (instance) этого класса или переменной этого типа.

Класс представляет собой особый тип записи, имеющий в своем составе такие элементы (члены, member), как поля, свойства и методы. Поля класса аналогичны полям записи и служат для хранения информации об объекте. Методами называются процедуры и функции, предназначенные для обработки полей. Свойства занимают промежуточное положение между полями и методами.

Каждая написанная программа на языке Delphi состоит из заголовка программы (program NewApplication;), поля используемых модулей Uses (к примеру, Uses Windows, Messages, SysUtils и т.д.), который может не входить в саму структуру, а также блока описание и исполнения (начинаются составным оператом begin и заканчиваются end.).


2.5 Создание клиента с помощью выбранного языка программирования


Form- представляет окно или диалоговое окно, которое составляет пользовательский интерфейс приложения [41]. Form является представлением любого окна, отображаемого в приложении. Класс Form используется для создания стандартных окон, окон инструментов, необрамленных и перемещаемых окон. Класс Form также используется для создания модальных окон, например, диалогового окна. Особым видом формы является форма интерфейса MDI, содержащая другие формы, называемые дочерними MDI-формами. MDI-форма создается с помощью посредством задания IsMdiContainer значения true. Дочерние MDI-формы создаются с помощью установки свойства MdiParent для родительской MDI-формы, которая будет содержать дочернюю форму.

С помощью свойств, доступных в классе Form, имеется возможность определить внешний вид, размер, цвет и компоненты управления создаваемого окна или диалогового окна. Свойство Text позволяет задавать заголовок окна в строке заголовка. С помощью свойств Size и DesktopLocation определяются размер и положение окна при его отображении. Имеется возможность использовать свойство цвета ForeColor для изменения назначенного по умолчанию цвета фона всех элементов управления, помещенных в форму. Свойства FormBorderStyle, MinimizeBox и MaximizeBox позволяют управлять возможностью свертывания, развертывания или изменения размера формы во время выполнения.

Помимо свойств для управления формой используются методы класса. Например, метод ShowDialog используется для отображения формы как модального диалогового окна. Имеет возможность использовать метод SetDesktopLocation для размещения формы на рабочем столе.

События класса Form позволяют отвечать на действия, выполненные с формой. Имеется возможность использовать событие Activated для выполнения таких операций, как обновление данных, отображаемых в элементах управления формы при ее активации.

Форма используется в качестве начального класса приложения с помощью помещения в класс метода, называемого Main В методе Main необходимо добавить код для создания и отображения формы. Необходимо также добавить атрибут STAThread для метода Main для запуска формы. Если начальная форма закрыта, приложение также закрыто.

Если для свойства Enabled указать значение false перед тем как Form станет видимым (например, установив значение FALSE в конструкторе Enabled Microsoft Visual Studio), кнопки свертывания, максимизирования, закрытия и системная кнопки останутся включенными. Если для Enabled указать значение false после того, как Form становится видимым (например, при возникновении события Load), кнопки будут отключены. представляет элемент управления Windows "Кнопка".Класс Button можно выбрать с помощью мыши, клавиш ВВОД или ПРОБЕЛ, если кнопка имеет фокус.

При отображении формы с помощью метода ShowDialog можно использовать свойство DialogResult кнопки, чтобы указать возвращаемое значение ShowDialog.

Можно изменить внешний вид кнопки. Например, чтобы она выглядела плоской, как в веб-оформлении, задайте свойству FlatStyle значение FlatStyle.Flat. Свойству FlatStyle тоже может быть присвоено значение FlatStyle.Popup, при этом кнопка выглядит плоской, до тех пор пока на нее не наведен указатель мыши; при наведении указателя кнопка принимает стандартный внешний вид кнопки Windows. Если элемент управления, имеющий фокус, принимает и обрабатывает нажатие клавиши ВВОД, объект Button не обрабатывает его. Например, если многострочная кнопка TextBox или другая кнопка имеет фокус, этот элемент управления обрабатывает нажатие клавиши ВВОД вместо ее принятия. представляет стандартную надпись Windows. Элементы управления Label обычно используются для отображения описательного текста для элемента управления. Например, элемент управления Label служит для добавления описательного текста для элемента управления TextBox, информирующего о типе данных, ожидаемых в элементе управления. Элементы управления Label могут также использоваться для добавления описательного текста Form, чтобы предоставить пользователю полезные сведения. Например, можно добавить класс Label в начало Form, предоставляющей инструкции по вводу данных в элементы управления формы. Элементы управления Label могут использоваться также для отображения сведений о времени выполнения и состоянии приложения. Например, можно добавить в форму элемент управления Label для отображения состояния каждого файла как списка обрабатываемых файлов.

Элемент управления Label участвует в последовательности формы, но не получает фокус (следующий элемент управления в последовательности получает фокус). Например, если свойство UseMnemonic имеет значение true, а назначенная клавиша быстрого доступа (первый знак после амперсанда (&)) указана в свойстве элемента управления Text, то при нажатии ALT+ назначенная клавиша быстрого доступа фокус перемещается к следующему элементу управления в последовательности. Эта возможность обеспечивает взаимодействие с формой при помощи клавиатуры. Кроме отображения текста, в элементе управления Label также может отображаться изображение с помощью свойства Image или сочетания свойств ImageIndex и ImageList. Элемент управления Label можно сделать прозрачным путем установки для его свойства BackColor значения Color.Transparent. При использовании прозрачной метки для рисования контейнера следует использовать только систему координат текущего устройства, иначе фон элемента управления Label может быть нарисован неправильно. - отображает данные в настраиваемой сетке. Элемент управления DataGridView предоставляет настраиваемую таблицу для отображения данных. Класс DataGridView допускает настройку ячеек, строк, столбцов и границ с помощью использования свойств, таких как DefaultCellStyle, ColumnHeadersDefaultCellStyle, CellBorderStyle и GridColor.

Элементом управления DataGridView можно воспользоваться для отображения данных вместе с источником базовых данных или без него. Не указывая источник данных, можно создать столбцы и строки, содержащие данные, и добавить их непосредственно в объект DataGridView с помощью свойств Rows и Columns. Можно также использовать коллекцию Rows для доступа к объектам DataGridViewRow и свойство DataGridViewRow.Cells для непосредственного считывания или записи значения ячейки. Индексатор Item также обеспечивает прямой доступ к ячейкам.

В качестве альтернативы заполнению элемента управления вручную можно задать свойства DataSource и DataMember, чтобы привязать объект DataGridView к источнику данных и автоматически заполнить его данными.

При работе с очень большими объемами данных можно задать для свойства VirtualMode значение true, чтобы отобразить подмножество доступных данных. Виртуальный режим требует реализацию кэша данных, из которого будет заполняться элемент управления DataGridView. Дополнительные сведения см. в разделе Элемент управления DataGridView наследует оба свойства ContextMenu и ContextMenuStrip из объекта Control, однако поддерживает только свойство ContextMenuStrip. Использование свойства ContextMenu с элементом управления DataGridView не дает эффекта. - представляет элемент управления полем со списком Windows. ComboBox отображает текстовое поле вместе с ListBox, который позволяет пользователю выбрать элементы из списка или ввести новое значение.

Свойство DropDownStyle указывает, всегда ли отображается список, или же он является раскрывающимся. Свойство DropDownStyle также указывает, можно ли редактировать текстовую часть. Не существует параметра, позволяющего всегда отображать список и запретить ввод нового значения. Чтобы отобразить список, в который нельзя добавить новые значения, воспользуйтесь элементом управления ListBox.

Чтобы добавить или удалить объекты в списке во время выполнения, используйте методы класса ComboBox.ObjectCollection (через свойство Items объекта ComboBox). Можно назначить массив ссылок на объекты с помощью метода AddRange. После этого в списке для каждого объекта будет отображено значение строки по умолчанию. Отдельные объекты можно добавить с помощью метода Add. Можно удалить элементы с помощью метода Remove или очистить весь список с помощью метода Clear.

Кроме функций отображения и выбора, ComboBox также реализует возможности, позволяющие эффективно добавлять элементы в ComboBox и выполнять поиск текста в элементах списка. С помощью методов BeginUpdate и EndUpdate можно добавлять к ComboBox большое число элементов, причем элемент управления не будет перерисовываться при добавлении к списку каждого нового элемента. Методы FindString и FindStringExact позволяют найти в списке элемент, содержащую определенную строку поиска.

Можно использовать следующие свойства для управления текущим выделенным элементом списка: свойство Text для задания строки, отображаемой в редактируемом поле, свойство SelectedIndex для получения или задания текущего элемента и свойство SelectedItem для получения или задания ссылки на объект. Если имеются объекты ListBox, ComboBox или CheckedListBox на базе страницы Windows Forms и необходимо изменить коллекции строк этих элементов управления в производной форме, коллекции строк этих элементов управления в базовой форме должны быть пустыми. Если коллекции строк не являются пустыми, они становятся коллекциями только для чтения, когда производится наследование другой формы. - предоставляет элемент управления полем форматированного текста Windows. С помощью элемента управления RichTextBox, пользователь может вводить и изменять текст. Элемент управления также предоставляет расширенные возможности форматирования по сравнению со стандартным элементом управления TextBox. Текст можно назначить непосредственно элементу управления или загрузить из файла RTF или открытого текстового файла. Тексту элемента управления можно назначить формат символов и абзацев.

Элемент управления RichTextBox содержит множество свойств, которые можно использовать при применении форматирования к любой части текста в элементе управления. Перед тем как изменить форматирование текста, этот текст необходимо выделить. Только к выделенному тексту можно применить форматирование символов и абзацев. После того как выделенному тексту был назначен какой-либо параметр, текст, введенный после выделенного, будет форматирован с учетом того же параметра, пока этот параметр не будет изменен, или не будет выделена другая часть документа элемента управления. Свойство SelectionFont позволяет выделять текст полужирным шрифтом или курсивом. Кроме того, с помощью этого свойства можно изменять размер и шрифт текста. Свойство SelectionColor позволяет изменять цвет текста. Для создания маркированных списков следует использовать свойство SelectionBullet. Настройка форматирования абзацев осуществляется также с помощью свойств SelectionIndent, SelectionRightIndent и SelectionHangingIndent.

Элемент управления RichTextBox содержит методы, которые позволяют открывать и сохранять файлы. Метод LoadFile позволяет загрузить в элемент управления существующий текстовый файл в формате RTF или ASCII. Данные можно также загрузить из уже открытого потока данных. Метод SaveFile позволяет сохранять файлы в формате RTF или формате текста ASCII. Метод SaveFile позволяет сохранять данные в открытый поток примерно так же, как метод LoadFile. Элемент управления RichTextBox предоставляет, кроме того, возможности поиска текстовых строк. Метод Find перегружается, чтобы осуществлять по тексту элемента управления поиск как текстовых строк, так и отдельных символов.

Для хранящихся в памяти данных можно также активировать элемент управления RichTextBox. Например, можно активировать свойство Rtf для строки, содержащей текст, который будет отображаться на экране, и в том числе коды RTF, которые определяют форматирование текста.

Если текст элемента управления содержит ссылки, например ссылку на веб-узел, чтобы эта ссылка правильно отображалась в тексте элемента управления, можно использовать свойство DetectUrls. После этого, чтобы выполнить задачи, сопоставленные со ссылкой, можно обработать событие LinkClicked. Свойство SelectionProtected позволяет пользователю самому защитить текст элемента управления. Если текст элемента управления защищен, обработка события Protected позволит определить действие, которое будет выполняться, когда пользователь предпримет попытку изменить защищенный текст: либо оповестить пользователя о том, что текст защищен, либо предоставить пользователю стандартную форму работы с защищенным текстом.

Приложения, которые уже используют элементы управления TextBox, не составит особого труда настроить на использование элементов управления RichTextBox. Но емкость элемента управления RichTextBox не соответствует емкости элемента управления TextBox, которая составляет 64 КБ. Элемент управления RichTextBox используется обычно для работы с текстом и отображения функций, как это происходит в текстовых процессорах, таких как Microsoft Word. - предоставляет элемент управления "текстовое поле" Windows. Элемент управления TextBox позволяет пользователю вводить текст в приложение. Этот элемент управления обладает дополнительными функциональными возможностями, отсутствующие у стандартного элемента управления "текстовое поле" Windows, включая редактирование в многострочном режиме и маскировку ввода знаков пароля.

Обычно элемент управления TextBox используется для отображения или ввода одной строки текста. Свойства Multiline и ScrollBars позволяют отображать или вводить несколько строк текста. Чтобы разрешить дополнительные операции с текстом в многострочном элементе управления TextBox, необходимо установить значение true для свойств AcceptsTab и AcceptsReturn. Чтобы настроить высоту элемента управления TextBox, необходимо установить для свойства Multiline значение true. Эту высоту можно настроить, установив свойство Size. Объем текста, вводимого в элемент управления TextBox, можно ограничить путем установки для свойства MaxLength определенного количества знаков. Элементы управления TextBox могут также использоваться для принятия паролей и других конфиденциальных сведений. Свойство PasswordChar позволяет маскировать знаки, вводимые в однострочную версию элемента управления. Свойство CharacterCasing используется, чтобы разрешить ввод в элемент управления TextBox только прописных, только строчных или комбинации прописных и строчных букв.

Чтобы прокрутить содержание текстового поля TextBox, пока курсор (знак вставки) не окажется в видимой области элемента управления, можно использовать метод ScrollToCaret. Чтобы делить часть текста в текстовом поле, можно использовать метод Select.

Для ограничения текста, вводимого в элемент управления TextBox, имеется возможность создать обработчик событий для события KeyDown, который бы проверял каждый знак, введенный в элемент управления. Полностью запретить ввод данных в элемент управления TextBox можно, установив значение true для свойства ReadOnly. Большая часть функциональных возможностей элемента управления TextBox наследуется от класса TextBoxBase. Использование элемента управления TextBox с доступными визуальными стилями приведет к неверной обработке подстановочных шрифтов. На рисунке 9 показана основное окно программы проката дисков. Для работы с данными таблицы необходимо нажать файл.

При нажатии кнопки файл открывается основной список строк: «база данных», «прокат», «штрафы», «выход».


Рисунок 9 - Окно программы проката дисков


При наведении курсора на строку база данных открывается список: «диски», «клиенты», «тарифы и санкции».


Рисунок 10 - Разделы меню «Файл»


На рисунке 11 показана форма «диски». Для ее открытия необходимо выполнить следующие действия: файл-база данных- диски. Данная таблица дает информацию клиенту о дисках, которые имеются в прокате, для того, чтобы клиент смог выбрать интересующий его фильм. В этой таблице имеются кнопки: «добавить», «изменить», «удалить». Для того, чтобы записать в базу новый диск необходимо записать данные диска, после чего нажать кнопку добавить появится окно данные добавлены- ОК и диск будет добавлен в таблицу. Для того чтобы изменить данные о диске необходимо выбрать область, которую клиент хочет обновить, внести изменения и нажать кнопку изменить, появится окно данные обновлены - ОК. Для удаления диска нужно его выбрать и нажать кнопку удалить, появится окно данные удалены-ОК.


Рисунок 11 - Форма «диски»


Рисунок 12 - Диалоговое окно, информирующее пользователя об успешном добавлении данных в БД


Рисунок 13 - Диалоговое окно, информирующее пользователя об успешном обновлении данных в БД


Рисунок 14 - Диалоговое окно, информирующее пользователя об успешном удалении данных в БД


На рисунке 15 показана форма «клиенты». Для работы с базой данных клиентов необходимо выполнить следующие команды: файл- база данных- клиенты. В данной таблице находятся данные о клиентах. Для добавления, изменения или удаления информации о клиентах необходимо произвести аналогичные действия, как и с таблицей базы данных диски.


Рисунок 15 - Форма «клиенты»


На рисунке 16 показана форма «тарифы и санкции». В данной таблице указывается один тариф с тарифной сеткой равной 50 рублям за сутки. Как и в двух предыдущих таблицах здесь имеются кнопки: «добавить», «изменить», «удалить». С ними необходимо выполнять такие же действия как и в описанных выше таблицах.


Рисунок 16 - Форма «тарифы и санкции»


На рисунке 17 показана форма «прокат», в которой содержатся фамилии клиентов и названия дисков, которые можно взять в прокат, а также названия дисков, которые должны клиенты.


Рисунок 17 - Форма «прокат»


Для того, чтобы взять диск в прокат, необходимо выбрать фамилию клиента, название диска и нажать кнопку «добавить». После этих действий появится диалоговое окно «диск вами взят в прокат».


Рисунок 18 - Форма «прокат», выбор ФИО клиента


Рисунок 19 - Форма «прокат» ,выбор названия диска


Рисунок 21 - Диалоговое окно, информирующее пользователя о том, что диск им взят


Для возврата диска необходимо выбрать фамилию клиента, после чего в окне возврат диска нужно выбрать название диска, который подлежит возврату и нажать кнопку «возврат», после чего появится диалоговое окно «диск вами возвращен в прокат» - ОК.


Рисунок 22 - Форма «прокат» возврат диска


Рисунок 23 - Диалоговое окно, информирующее пользователя о том, что диск им возвращён


На рисунке 24 показана форма «штрафы», где производится автоматический расчет суммы долга, за просроченные клиентом диски. Расчет производится в реальном времени, согласно тарифной сетке, сумма будет посчитана когда будет нажата кнопка «возврат». После появится диалоговое окно «данные обновлены», которые не удаляются и не изменяются.


Рисунок 24 - Форма «штрафы»


Для выхода из программы необходимо нажать кнопку «выход» в меню «Файл» или нажать на крестик в заголовке окна.


ЗАКЛЮЧЕНИЕ


Доступ пользователей к распределенной базе данных осуществляется с помощью системы управления распределенной базой данных.

Распределенная СУБД - совокупность программ, предназначенных для управления распределенной базой данных таким образом, чтобы ее распределённость была понятна для пользователей. Основная задача распределенной СУБД состоит в обеспечении средств интеграции локальных баз данных, располагающихся в различных узлах компьютерной сети, чтобы пользователь работал со всеми локальными базами как с единой базой данных.

На сегодняшний день базы данных остаются самыми распространенными, благодаря своей простоте и наглядности, как в процессе создания, так и на пользовательском уровне. Современный специалист должен уметь с помощью компьютеров и средств связи получать, накапливать, хранить и обрабатывать данные, представляя результат в виде наглядных документов.

В данной дипломной работе решены следующие задачи:

)проанализирован материал по теме исследования;

)разработаны требования к приложению;

)спроектирована база данных;

)создана база данных в системе управления базами данных Access;

)написано клиентское приложение на выбранном языке программирования.

Проанализировав теоретический материал и разработав требования к приложению были спроектированы и созданы таблицы в базе данных:

)диски;

)фильмы;

)прокат;

)тарифы и санкции;

)штрафы.

Которые содержат данные: о наличии дисков и информация о них; о клиентах, взявших диски в прокат и о клиентах - должниках, которые обязаны вернуть диски в прокат, а также их суммы задолженности, согласно указанному тарифу.

Для автоматизации работы проката было создано клиентское приложение, которое обновляет, добавляет, удаляет строки в выше указанных базах данных, а также рассчитывает сумму штрафа клиента.

Разработанное приложение может быть использовано в прокатах дисков, в домашних прокатах, для удобства ведения учёта дисков и слежения за их возвратом.


СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ


1)Бекаревич, Ю.Б. Самоучитель Access 2010 / Ю.Б. Бекаревич,Н.В. Пушкина - СПб: BHV, 2011 - 432 с

2)Бруга, Л. Java по-быстрому: Практический экспресс-курс / Л. Бруга - М.: Наука и техника <http://ru.wikipedia.org/wiki/%D0%9D%D0%B0%D1%83%D0%BA%D0%B0_%D0%B8_%D1%82%D0%B5%D1%85%D0%BD%D0%B8%D0%BA%D0%B0>, 2006 - 369с.

)Вонг, У. Microsoft Office 2007 для «чайников» / У. Вонг - М.: Диалектика, 2007 - 368 с.

4)Голицына, О.Л. Базы данных / О.Л. Голицына, Н.В. Максимов, И.И. Попов- 2-е изд., испр. и доп. - М: ФОРУМ Инфра-М, 2009 - 400 с.

)Голицына, О.Л. Системы управления базами данных / О.Л. Голицына, Партыка Т.Л, И.И. Попов - М: ФОРУМ Инфра-М, 2011 - 432 с.

6)Гринт, З. MySQL. / З. Грин,. К. Ньюман. - М.: Вильямс 2006 - 224 с

7)Гросс, К. С# 2008 / К. Гросс - Спб:БХВ-Петербург, 2009 - 576 с.

8)Гукин, Д. Word 2010 для чайников. Word 2010 for Dummie / Д. Гукин - М.: Диалектика, 2010 - 352 с.

)Дейт ,К. Дж. Введение в системы баз данных / К.Дж.Дейт - 8-е изд. - М.: Вильямс, 2006 - 542 с.

)Дейт, К. Дж. Введение в системы баз данных / К. Дж. Дейт - 6-е изд. - М.: Вильямс, 2006 - 1328 с.

)Дюбуа, П. MySQL / П. Дюбуа - 3-е изд. - М.: Вильямс, 2006 - 1168 с.

12)Епанешников, А.М. Практика создания приложений в Access 2007 / А.М. Епанешников, В.А. Епанешников - М: Диалог-МИФИ,2009 - 440 с.

)Илюшечкин, В.М. Основы использования и проектирования баз данных / В.М. Илюшечкин - М: ИД Юрайт, 2011 - 213 с.

14)Кайт <http://ru.wikipedia.org/wiki/%D0%A2%D0%BE%D0%BC_%D0%9A%D0%B0%D0%B9%D1%82>, Т. Oracle для профессионалов: архитектура и программирование / Т. Кайт <http://ru.wikipedia.org/wiki/%D0%A2%D0%BE%D0%BC_%D0%9A%D0%B0%D0%B9%D1%82> - М.: Вильямс <http://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2007 - 848 с.

15)Кириллов, В.В. Введение в реляционные базы данных / В. В. Кириллов, Г. Ю. Громов - СПб: БХВ - Петербург, 2009 - 464 с.

)Климов, А. C#. Советы программистам / А. Климов - М.:Вильямс, 2008 - 544 с.

)Кошелев, В.Е. Access 2007. Эффективное использование / В. Е. Кошелев - М:Бином-Пресс, 2009 - 590 с.

)Кузин, А.В. Базы данных / А.В. Кузин, С.В. Левонисова - 2-е изд - М: Academia, 2008 - 320 с.

19)Кузнецов, М. MySQL 5. в подлиннике / М.Кузнецов, И. Симдянов - СПб.: БХВ-Петербург, 2006 - 1024 с.

20)Кузнецов, М. MySQL на примерах / М.Кузнецов, И. Симдянов - СПб.: БХВ-Петербург, Глушаков, С.В. Microsoft Access 2007. Лучший самоучитель / С.В. Глушаков, А.С. Сурядный,М.И. Шумилов - 2-е изд., доп. и перераб. - М: АСТ Москва, 2008 - 444 с.

21)Кузнецов, М. Самоучитель MySQL 5. / М.Кузнецов, И. Симдянов - СПб.: БХВ-Петербург, 2006 - 560 с.

22)Кузнецов, С. Д. Базы данных. Модели и языки / С. Д. Кузнецов - М:Бином-Пресс, 2008 - 720 с.

23)Кузнецов, С. Д.Основы баз данных./ С. Д. Кузнецов - 2-е изд. -М.: Интернет-Университет Информационных Технологий; БИНОМ. Лаборатория знаний, 2007 - 484 с.

24)Кумскова, И.А. Базы данных / И.А. Кумскова - М: КноРус, 2010 - 488 с.

)Левин, А. Word и Excel. Самоучитель Левина в цвете / А. Левин - СПб: Питер, 2011 - 224 с.

26)Либерти, Д. Освой самостоятельно C++ за 24 часа / Д. Либерти,Д Хорват - 4-е изд. - М.: Вильямс, 2007 - 448 с.

)Майо, Д. Самоучитель Microsoft Visual Studio 2010 / Д. Майо - CПб.:БХВ - Петербург, 2010 - 464 с.

)Мак-Дональд, М. Microsoft ASP.NET 3.5 с примерами на C# 2008 для профессионалов / М. Мак-Дональд, М. Шпушта - М.:Вильямс <http://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2008 - 1424 с.

)Малыхина, М.П. Базы данных. Основы, проектирование, использование / М. П. Малыхина - СПб: БХВ - Петербург, 2006 - 528 с.

)Мирошниченко, Г.А. Реляционные базы данных / Г.А. Мирошниченко - СПб: BHV, 2006 - 400 с.

)Моисеенко, С.И. Разработка приложений в MS Access/ С.И. Моисеенко, Б.В. Соболь - М: Вильямс, 2006 - 272 с.

)Монахов, В. Язык программирования Java и среда NetBeans <http://barsic.spbu.ru/www/comlan/java_vm.html> / В.Монахов - 3-е изд. - СПб.: БХВ-Петербург <http://ru.wikipedia.org/wiki/%D0%91%D0%A5%D0%92-%D0%9F%D0%B5%D1%82%D0%B5%D1%80%D0%B1%D1%83%D1%80%D0%B3_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)>, 2011 - 704 с.

)Нейгел C# 2008 и платформа .NET 3.5 для профессионалов / Нейгел, Ивьен, Глинн, Уотсон, Скиннер - М.:Вильямс <http://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2008 г. - 1392 с.

)Нейгел, К. Visual C# 2010: полный курс / К. Нейгел, К. Уотсон - Киев: Диалектика, 2010.

35)Никсон, Р. Ubuntu для всех / Р. Никсон - СПб: БХВ - Петербург, 2011 - 464 с.

36)Нэш, Т C# 2010: ускоренный курс для профессионалов / Т. Нэш - М.:Вильямс, 2010 - 592 с.

37)Осипов, Д.Л. Базы данных и Delphi. Теория и практика / Д.Л. Осипов - СПб: БХВ - Петербург, 2011 - 752 с.

38)Павловская, Т.А. C#. Программирование на языке высокого уровня / Т.А. Павловская - М.:Вильямс <http://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2009 - 240 с.

39)Пауэрс, Л. Microsoft Visual Studio 2008 / М. Снелл,Л. Пауэрс - CПб.:БХВ-Петербург, 2008 - 1200 с.

40)Пашек,Х. Программирование в Borland Delphi 2006 для профессионалов / Х. Пашек - М.: Вильямс, 2006. - 944 с.

)Петцольд, Ч. Программирование с использованием Microsoft Windows Forms / Ч. Петцольд - М.:Вильямс <http://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2006 - 432 с.

)Пирогов, В.Ю. Информационные системы и базы данных. Организация и проектирование / В. Ю. Пирогов - СПб: БХВ - Петербург, 2009 - 528 с.

)Рубенкинг, Нил Дж. Язык программирования Delphi для «чайников» / Нил Дж. Рубенкинг - М.: Диалектика, 2007 - 336 с.

44)Свиридова, М.Ю. Система управления базами данных Access / М.Ю. Свиридова - М: Academia, 2010 - 192 с.

45)Сергеев, А. П. Microsoft Office 2007. Самоучитель / А.П. Сергеев - М.: Диалектика, 2007 - 416 стр.

46)Советов, Б.Я. Базы данных. Теория и практика /Б.Я. Советов, В.В. Цехановский,В.Д. Чертовской - 2-е изд - М: Высшая школа, 2007 - 463 с.

47)Стаковьяк ,Р. Программирование баз данных Oracle для профессионалов / Р. Гринвальд, Р. Стаковьяк - М.: Диалектика <http://ru.wikipedia.org/w/index.php?title=%D0%94%D0%B8%D0%B0%D0%BB%D0%B5%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2007 - 784с.

)Стефенс ,Д. Р. C++. Сборник рецептов. - М: КУДИЦ-ПРЕСС, 2007 - 624 с.

)Страуструп, Б. <http://ru.wikipedia.org/wiki/%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF,_%D0%91%D1%8C%D1%91%D1%80%D0%BD> Язык программирования C++. Специальное издание / Б.Страуструп - М.: Бином-Пресс, 2007 - 1104 с.

)Сэм, Р. Oracle руководство администратора баз данных / Р.Сэм - М.: Вильямс <http://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2009 - 1341с.

)Троелсен, Э. Язык программирования C# 2010 и платформа .NET 4.0 / Э. Троелсен - 5-е изд. -М.:Вильямс <http://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2010 - 1392 с.

)Фаронов ,В.В. Программирование на языке С# / В.В. Фаронов - М.:Вильямс <http://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2007 - 240 с.

)Фрост, Р. Базы данных. Проектирование и разработка / Р. Фрост, Д. Дей, К.В. Слайк - М: НТ Пресс, 2008 - 592 с.

)Фуллер,Л.У. Microsoft Office Access 2007 для "чайников" / Л.У. Фуллер, К. Кук, Д. Кауфельд - М: Вильямс,2007 - 431 с.

55)Фуфаев, Д.Э. Базы данных /Д.Э. Фуфаев, Э.В. Фуфаев - 5-е изд. - М: Academia, 2009 - 320 с.

)Фуфаев, Д.Э. Разработка и эксплуатация удаленных баз данных /Д.Э. Фуфаев, Э.В. Фуфаев - 2-е изд. - М: Academia, 2009 - 256 с.

)Цыганов, А.А. Управление данными / А.А. Цыганов, А.В. Кузовкин,Б.А. Щукин - М: Academia, 2010 - 256 с.

58)Шелдон, Р MySQL: базовый курс / Р. Шелдон, Д. Мойе - М.: Диалектика, 2007 - 880 с.

59)Шилдт, Г. C# 4.0 полное руководство / Г. Шилдт - М.:Вильямс, 2011 - 1056 с.

60)Шилдт, Г. Полный справочник по C++ / Г. Шилдт - 4-е изд. - М.: Вильямс, 2006 - 800 с.


СОДЕРЖАНИЕ программирование база клиентский приложение ВВЕДЕНИЕ 1. ПОНЯТИЕ БАЗЫ ДАННЫХ .1 Определение базы данных .2 Обзор существующих систем уп

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ