русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Элементы баз данных


Дата добавления: 2013-12-24; просмотров: 1199; Нарушение авторских прав


ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ

Организация учебного процесса. Замечания для преподавателей и студентов

Предлагаю следующий вариант организации учебного процесса:

Обучение заключается в посещении лекций, выполнении практических Д/З и самостоятельного изучения материала, выполнении лабораторных работ (Д/З и результаты лабораторных используются как заготовка для курсовой работы), контрольной работы по SQL, экзамена с тремя теоретическими вопросами и практической задачей. Лучшему студенту на контрольной может быть поставлена отметка «отлично» за экзамен, еще нескольким – отмена практического задания на экзамене. Действует рейтинговая система, в которой учитывается посещение, своевременность и качество выполнения заданий. Студентам с высоким рейтингом сокращается число вопросов на экзамене, за выдающиеся успехи в учебе студенты могут получить отметку «отлично», не сдавая экзамен.

Сведения об авторе: Добряк Павел Вадимович, кандидат технических наук, доцент кафедры «Радиоэлектроника информационных систем» Радиотехнического института Уральского государственного технического университета. Электронная почта: goodsoul@mail.ru . Область научных интересов: компьютерные языки, базы данных, объектно-ориентированные технологии.

 

 


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

Рис. 1. Иерархия информационной системы

На нижнем уровне находятся датчики и операторские места, уровнем выше автоматизированные системы управления технологическими процессами(АСУТП) и прикладные программы, автоматизирующие работу различных отделов предприятия, затем идут автоматизированные системы управления предприятиями(АСУП, ERP) и корпоративные информационные системы(КИС), автоматизирующие работу глобальных корпораций.



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

Широкое распространение получила трехуровневая архитектура информационных систем, показанная на Рис. 2.

Рис. 2. Трехуровневая архитектура информационных систем

На сервере СУБДработают различные элементы базы данных. На нем хранятся данные, упорядоченные по схеме данных – способу структурирования данных. Простейший способ структурирования данных в виде таблицы, применяемый в электронных таблицах, например, в Excel, хотя и удобен и нагляден для представления информации, создает некоторые проблемы при хранении и изменении данных. Например, электронная таблица, показанная в Табл. 2, хотя и позволяет представить информацию и подвести итоги по продажам, но содержит аномалии . Например, если нам нужно хранить дополнительную информацию о продавцах – фамилию, имя, отчество и паспортные данные, то такое хранение потребует большого объема памяти. Для каждой сделки данного продавца нужно будет вводить паспортные данные, и возможны ошибки ввода – нарушение целостности базы данных. Кроме того, если паспортные данные изменятся, нужно будет изменять каждую строчку, в котором есть информация о продавце. Логично хранить информацию о продавце в отдельной таблице. Таким образом, большая таблица распадается на множество взаимосвязанных между собой таблиц – реляционную базу данных, схема которой показана на Рис. 3 (на ней для наглядности приведены только заголовки столбцов).

Табл. 2. Пример электронной таблицы – «Продажи»

N Продавцы.Имя Покупатели.Имя Название Количество Стоимость Дата
Иванов Павлов Мыло 01.01.2009
Иванов Андреев Мыло 01.01.2009
Иванов Павлов Шило 02.01.2009
Петров Андреев Мыло 01.01.2009
Сидоров Сергеев Шило 01.01.2009
  Итог     150,00 2420,00  

Рис. 3. Схема реляционной базы данных

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

Выбрать все сделки данного продавца.

Выбрать все сделки, заключенные данным отделом за сентябрь.

На языке SQL запрос «Вывести всю информацию о продавцах, упорядоченных по отделам

» выглядит следующим образом (Лист. 1):

Лист. 1. Пример запроса на языке SQL.

SELECT *

FROM Продавцы

ORDER BY Отдел;

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

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

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

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

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

Д/З 1. Придумайте предметную область, составьте 3-5 взаимосвязанных табличек, два запроса, триггер, событие, транзакцию, хранимую процедуру, бизнес-правило.

Вопросы для самопроверки:

1. На каком уровне иерархии информационных систем (Рис. 1) находится 1С: Бухгалтерия?

2. На каком уровне трехуровневой архитектуры логично делать проверку отсутствия циклов в иерархии начальник-подчиненный в таблице «Продавцы» на Рис. 3 (подчиненный не может оказаться начальником своего начальника)?

3. Объясните, почему неэффективно хранить данные ИС в одной большой таблице?



<== предыдущая лекция | следующая лекция ==>
ВВЕДЕНИЕ | Технологии управления данными


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.078 сек.