Вы находитесь на странице: 1из 19

1СИСТЕМА совокупность элементов, находящихся вотношениях и связях друг с другом, которая образует определ.

целостность, е
динство. Потребность в использовании термина «система» возникает в тех случаях, когда нужно подчеркнуть, что что-то является
большим, сложным, не полностью сразу понятным, при этом целым, единым. В отличие от понятий «множество», «совокупность»
понятие системы подчёркивает упорядоченность, целостность, наличие закономерностей построения, функционирования и
развития[2].
В повседневной практике слово «система» может употребляться в различных значениях, в частности[3]:
 теория, например, философская система Платона;
 классификация, например, Периодическая система химических элементов Д. И. Менделеева;
 метод практической деятельности, например, система Станиславского;
 способ организации мыслительной деятельности, например, система счисления;
 совокупность объектов природы, например, Солнечная система;
 некоторое свойство общества, например, политическая система, экономическая система и т. п.;
 совокупность установившихся норм жизни и правил поведения, например, законодательная система или
система моральных ценностей;
 закономерность («в его действиях прослеживается система»);
ЭЛЕМЕНТ СИСТЕМЫ – составная часть системы, рассматриваемая в рамках исследовательской задачи как неделимая единица.
Внутренняя структура элемента не является при этом предметом исследования. Элемент системы, при изучении его структуры,
рассматривается с позиций системного подхода, в свою очередь как подсистема более низкого уровня иерархии, состоящая из
подэлементов.
2 Банк данных — это система специальным образом организованных данных (баз данных), программных, технических, языковых,
организационно-методических средств, предназначенных для обеспечения централизованного накопления и коллективного
многоцелевого использования данных
Основными функциями банка данных являются:
- Хранение информации, ее защита и восстановление после сбоев в работе.
- Периодическое изменение хранимых данных.
- Поиск и отбор необходимых данных по запросам пользователей и прикладных программ.
- Обработка найденных данных и вывод результатов в заданной форме.
банк данных состоит из следующих компонентов:
1. Базы данных – именованной совокупности данных, организованных по определенным правилам, предусматривающим общие
принципы описания, хранения и манипулирования данными.
2. Системы управления базами данных (СУБД) – комплекса программных и языковых средств, предназначенных для создания,
ведения и использования баз данных.
3. Словаря (справочника) базы данных – информации о базе данных, используемой СУБД для доступа к хранимой в ней информации.
База данных обычно содержит информацию о некоторой конкретной части окружающего нас мира (обычно ее называют предметной
областью). Физически база данных представляет собой один или несколько специальным образом организованных файлов,
хранящихся во внешней памяти (например, на магнитных или оптических дисках). По возможности при создании и обновлении базы
данных следует исключать дублирование хранящейся в ней информации.
3 Банк данных (БнД) является современной формой организации хранения и дос-тупа к информации. «Банк данных – это система
специальным образом организованных данных(баз данных), программных, технических, языковых,организационно- методических
средств, предназначенных для обеспечения централизованного накопле- ния и коллективного многоцелевого использования данных
Преимущества банка данных
-интегрированное хранение данных
- многоцелевое использовании информации
-соцращенае избыточности хранимых данных
-независимость прикладных программ
-непротиворечивость и целостность информации
Преимущества БнД. Наличие единого отображения определенной части реального мира позволяет обеспечить непротиворечивость
и целостность информации, возможность обращаться к ней не только при решении заранее предопределенных задач, но и с
нерегламентированными запросами. Интегрированное хранение сокращает избыточность хранимых данных, что приводит к
сокращению затрат не только на создание и хранение данных, но и на поддержание их в актуальном состоянии.
Использование БнД при правильной его организации должно существенно изменить деятельность организации, где он внедряется,
привести к обеспечению большей доступности данных для всех категорий сотрудников, сокращению документооборота,
возможности получения разнообразных по форме и содержанию документов, перераспределению функций между сотрудниками и
изменению характера выполняемых ими функций и, как следствие, улучшить всю систему управления предприятием.
Централизованное управление данными также дает целый ряд преимуществ. Использование СУБД обеспечивает высокое качество
выполнения функций по управлению данными и облегчает процесс создания информационных систем (ИС).
Выделение специальной группы сотрудников, выполняющих функции по проектированию и развитию БнД (администраторов БД),
и освобождение от этих функций всех остальных пользователей не только приводит к снижению требований к остальным участникам
процесса создания и функционирования БнД, но и повышает качество разработок, так как вопросами организации данных занимается
небольшое число профессионалов в этой области.
4 Банк данных (БнД) является современной формой организации хранения и дос-тупа к информации. «Банк данных – это система
специальным образом организованных данных(баз данных), программных, технических, языковых,организационно- методических
средств, предназначенных для обеспечения централизованного накопле- ния и коллективного многоцелевого использования данных
Надежность функционирования- одно из важнейших требований, предъявляемых к любой системе.
Быстродействие и производительность.Эти два близких друг к другу требования отражают временные потребности пользователей.
Первое из них определяется временем ответа (реакции) системы на запрос, исчисляемым с момента ввода запроса до момента начала
выдачи найденных данных. Это время зависит не только от быстродействия ПК, но и от способов физической организации данных,
методов доступа, способов поиска, сложности запроса и др. факторов. Второе требование определяется количеством запросов,
выполняемых в единицу времени.
Простота и удобство пользователя.Это требование предъявляется к банкам данных со стороны всех без исключения категорий
пользователей, особенно конечных, в работе которых необходим простой, но в то же время обладающий достаточными
возможностями язык запросов. Сложность запросов, отсутствие сервиса формируют в психологии пользователя нежелание работать
с информационной системой.
Массовость использования.Современная информационная система должна обеспечивать коллективный доступ пользователей, при
котором они могут одновременно и независимо обращаться к базам данных для получения необходимых сведений.
Защита информации.Система должна обеспечивать защиту хранимых в ней данных и программ как от случайных искажений и
уничтожения, так и от преднамеренных, несанкционированных действий пользователей.
5Банк данных (БнД) является современной формой организации хранения и дос-тупа к информации. «Банк данных – это система
специальным образом организованных данных(баз данных), программных, технических, языковых,организационно- методических
средств, предназначенных для обеспечения централизованного накопле- ния и коллективного многоцелевого использования данных
Если в состав БнД входит одна БД, банк принято называть локальным; если БД несколько - интегрированным.
СУБД - специальный комплекс программ и языков, посредством которого организуется централизованное управление базами данных
и обеспечивается доступ к ним.
ВС — вычислительная система, включающая технические средства (ТС) и общее программное обеспечение (ОПО); БД — базы
данных; СУБД — система управления БД; АБД — администратор баз данных, а также обслуживающий персонал и словарь данных
В состав любой СУБД входят языки двух типов:
язык описания данных (с его помощью описываются типы данных, их структура и связи);
язык манипулирования данными (его часто называют языком запросов к БД), предназначенный для организации работы сданными в
интересах всех типов пользователей.
6 Банк данных (БнД) является современной формой организации хранения и дос-тупа к информации. «Банк данных – это система
специальным образом организованных данных(баз данных), программных, технических, языковых,организационно- методических
средств, предназначенных для обеспечения централизованного накопле- ния и коллективного многоцелевого использования данных
Недостатки БнД вытекают из их достоинств. Создание интегрированной системы,естественно, сложнее, чем создание множества
локальных систем. Как следствие,предъ- являются высокие требования к квалификации разработчиков БнД. В результате
инте- грации возможна некоторая потеря эффективности отдельных приложений(но общая эффективность всей системы будет
выше). Для управления данными требуется специа- лизированное программное обеспечение, которое, в зависимости от класса
системы, мо- жет быть сравнительно дорогим, предъявляющим повышенные требования к техниче- ским средствам. Эксплуатация
распределенных корпоративных БнД– процесс сложный и дорогостоящий.
Преимущества Наличие единого отображения определенной части реального мира позволяет обеспечить непротиворечивость и
целостность информации, возможность обращаться к ней не только при решении заранее предопределенных задач, но и с
нерегламентиро-ванными запросами.
Использование БнД при правильной его организации должно существенно изме-нить деятельность организации, где он
внедряется: привести к обеспечению большей доступности данных для всех категорий сотрудников, сокращению
документооборота,возможности получения разнообразных по форме и содержанию документов, перерас-пределению функций
между сотрудниками и изменению характера выполняемых функций и, как следствие, улучшить всю систему управления
предприятием.
Централизованное управление данными также дает целый ряд преимуществ. Ис-пользование СУБД обеспечивает высокое качество
выполнения функций по управлению данными и облегчает процесс создания информационных систем(ИС).
Преимуществом банков данных является также то, что они обеспечивают возмож-ность более полной реализации принципа
независимости прикладных программ от дан-ных, чем это возможно при организации локальных файлов.
7 Банк данных (БнД) является современной формой организации хранения и дос-тупа к информации. «Банк данных – это система
специальным образом организованных данных(баз данных), программных, технических, языковых,организационно- методических
средств, предназначенных для обеспечения централизованного накопле- ния и коллективного многоцелевого использования данных
Вкачестве технических средств для банков данных чаще всего используются уни- версальные ЭВМ, периферийные средства для
ввода информации в базу данных и ото- бражения выводимой информации. Иногда используются дополнительные технические
средства для хранения больших объемов данных на внешних носителях.Если банк дан- ных реализуется в сети, то необходимы
соответствующие технические средства для обес- печения ее работы.
Состав и тип технических средств, на которых реализуются БнД, зависит от мно-гих факторов, основными из которых
являются: технические характеристики оборудо-вания, используемые технологии обработки данных, масштаб системы, временные
ог-раничения на время реакции системы, сложность обработки, стоимостные характери-стики и др.
Первоначально БнД реализовывались в основном на больших ЭВМ, а для доступа
кБД использовались терминалы. В связи со значительным и постоянным улучшением характеристик персональных ЭВМ появилась
возможность реализовать банки данных и на машинах этого класса. Но сначала характеристики персональных ЭВМ были недоста-
точными, чтобы в полной мере реализовать идеологию банков данных. Стала наблюдать- ся некоторая раздробленность
информационных систем, что, в свою очередь, привело к бурному развитию сетевых технологий и использованию соответствующих
технических средств.
8 Банк данных (БнД) является современной формой организации хранения и дос-тупа к информации. «Банк данных – это система
специальным образом организованных данных(баз данных), программных, технических, языковых,организационно- методических
средств, предназначенных для обеспечения централизованного накопле- ния и коллективного многоцелевого использования данных
Языковые средства СУБД являются важнейшей компонентой банков данных, так как в конечном счете они обеспечивают интерфейс
пользователей разных категорий с банком данных. Набор используемых в БнД языковых средств широк и разнообразен, их можно
классифицировать по следующим признакам
Широко используемым является деление языковых средств по поколениям.Кпер- вому поколению относят машинные
языки, ковторому – символические языки ассемблера, ктретьему – алгоритмические языки типаPL, COBOL и т.п., которые в60-
егоды называ- лись языками высокого уровня, но уровень которых гораздо ниже,чем у языков четверто- го поколения.
Языки четвертого поколения создавались под девизом: «люди стоят дороже, чем машины»1. При их проектировании
используются следующие принципы:
1.Принцип минимума работы: язык должен обеспечить минимум усилий,чтобы«заставить» машину работать.
2.Принцип минимума мастерства: работа должна быть так проста, как только это возможно; она не должна быть уделом
избранных и быть понятной лишь посвященным.
3.Принцип естественности языка, упразднения«инородного» синтаксиса и мнемо-ники. Язык не должен требовать от
пользователей значительных усилий в изучении син-таксиса или содержать много мнемонических либо иных обозначений, которые
быстро забываются.
4.Принцип минимума времени. Язык должен позволять без существенной задержки реализовывать возникающие потребности
в доступе к информации и ее обработке.
5.Принцип минимума ошибок. Технология должна быть спроектирована таким об-разом, чтобы минимизировать ошибки
человека, а уж если они возникли, то, по возмож-ности, «выловить» их автоматически.
6.Принцип минимума поддержки. Механизм языка должен позволить легко вносить изменения в имеющиеся приложения.
9 Банк данных (БнД) является современной формой организации хранения и дос-тупа к информации. «Банк данных – это система
специальным образом организованных данных(баз данных), программных, технических, языковых,организационно- методических
средств, предназначенных для обеспечения централизованного накопле- ния и коллективного многоцелевого использования данных
Программные средства БнД представляют собой сложный комплекс, обеспечи-вающий взаимодействие всех частей
информационной системы при ее функционировании
Основу программного обеспечения БнД представляют программные компоненты СУБД. В состав большинства СУБД
включены программные компоненты, позволяющие автоматизировать проектирование систем обработки информации(генераторы
отчетов,меню и др.). Строго говоря, эти функции не являются непосредственно функциями по управлению данными, но
большинство современных программных средств, которые продолжают называться СУБД, выходят за названные рамки и
фактически являются мощными комплексными инструментальными средствами, позволяющими автоматизи-ровать процесс
создания информационных систем.
Подавляющее большинство СУБД работает в среде универсальных операционных систем (ОС) и взаимодействует с ОС при
обработке обращений к БнД.Поэтому можно считать, что ОС также входит в состав БнД.
Для удовлетворения конкретных потребностей пользователей пишутся соответст-вующие программы1, которые
представляют прикладное программное обеспечение БнД.
При работе в архитектуре клиент-серверпрограммные средства будут подразде-ляться на соответствующие
компоненты: клиентская часть, обеспечивающая интерфейс пользователя с системой, серверная часть, реализующая обработку
запроса на сервере, и связная часть, обеспечивающая взаимодействие элементов в сети.
10 Для работы с базами данных используются специальные языки баз данных. Чаще всего выделяется два языка:
– язык определения данных (ЯОД) – служит для определения логической структуры БД;
– язык манипулирования данными (ЯМД) – содержит набор операторов манипулирования данными (добавление данных в БД,
удаление, модификация, выборка и т.д.).
Во многих СУБД обычно поддерживается единый интегрированный язык, содержащий все необходимые средства для работы с БД,
начиная от ее создания, и обеспечивающий базовый пользовательский интерфейс с базами данных.
Стандартным языком реляционных СУБД является язык SQL (Structured Query Language, query – вопрос) – структурированный язык
запросов, оперирует не отдельными записями, а группами записей.
Реляционные СУБД (relation – отношение): 1970 г., показана возможность управления данными благодаря их описанию в терминах
математической теории отношений – гибкая и простая реляционная модель данных стала доминирующей среди разработчиков и
пользователей СУБД.
Объектно-реляционные БД – объектно-ориентированные возможности (определение новых типов данных и функций их обработки)
встраиваются в реляционное основание.
Язык SQL сочетает средства ЯОД и ЯМД, то есть позволяет определять схему реляционной БД и манипулировать данными.
Использование языка SQL обеспечивает:
• организацию данных – возможность изменять структуру представления данных, устанавливать соотношения между элементами
БД;
• чтение данных (пользователем или приложением);
• обработку данных – добавление новых данных, удаление, модификация;
• управление доступом – ограничение возможности пользователя по чтению и изменению данных и защита их от
несанкционированного доступа;
• целостность данных – защита БД от разрушения в результате несогласованных действий или отказа системы;
11 Функционирование БнД невозможно без участия специалистов, обеспечивающих создание, функционирование и
развитие БнД. Их называют администраторами банка данных(АБД), они считаются составной частью банка данных.
В зависимости от сложности и объема банка данных, от особенностей используе-мой СУБД служба администрации банка
данных может различаться как по составу и ква- лификации специалистов, так и по количеству работающих в этой службе.
Функции администратора банка данных. АБД выполняют работы по созданию и обеспечению функционирования БнД
на протяжении всех этапов жизненного цикла системы. В составе группы администраторов банка данных можно выделить
различные подгруппы в зависимости от выполняемых ими функций.Численность группы админи- страции, выполняемые ими
функции будут в значительной степени зависеть от масшта- ба банка данных, специфики хранимой в нем информации,типа
банка данных, особен- ностей используемых программных средств и некоторых других факторов.
12Ба́зада́нных —представленнаяв объективной форме совокупность самостоятельных материалов
(статей, расчётов, нормативных актов, судебных решений и иных подобных материалов), систематизированных таким образом,
чтобы эти материалы могли быть найдены и обработаны с помощью электронной вычислительной машины Центральным
компонентом банка данных является база данных, и большинство классификационных признаков относятся именно к ней. По форме
представления ин-формации различаютвизуальные иаудиосистемы, а также системымультимедиа. Эта клас- сификация
показывает, в каком виде информация хранится в БД и выдается из баз дан- ных пользователям: в виде изображения, звука или
имеется возможность использования разных форм отображения информации. Понятие«изображение» здесь используется в широком
смысле: это может быть символьный текст, неподвижное графическое изобра- жение(рисунки, чертежи и
т.п.), фотографии, географические карты, движущие изо- бражения. Классификация способов представления информации являет
собой самостоя- тельную проблему и здесь не рассматривается.
По характеру организации данных БД могут быть разделены на неструктуриро-
ванные, частично структурированныеи структурированные. Этот классификационный при-
знак относится к информации, представленной в символьном виде. К неструктуриро-ванным БД могут быть отнесены
базы, организованные в виде семантических сетей.Час- тично структурированными можно считать базы данных в виде обычного
текста или гипертекстовые системы. Структурированные БД требуют предварительного проектиро-вания и описания структуры
БД. Только после этого базы данных такого типа могут быть заполнены данными.
13—
14 Система управления базами данных (СУБД) - это программное обеспечение, с помощью которого пользователи могут определять,
создавать и поддерживать базу данных, а также осуществлять к ней контролируемый доступ.
Основные функции СУБД
 управление данными во внешней памяти (на дисках);
 управление данными в оперативной памяти с использованием дискового кэша;
 журнализация изменений, резервное копирование и восстановление базы данных после сбоев;
 поддержка языков БД (язык определения данных, язык манипулирования данными).
Обычно современная СУБД содержит следующие компоненты:
 ядро, которое отвечает за управление данными во внешней и оперативной памяти и журнализацию,
 процессор языка базы данных, обеспечивающий оптимизацию запросов на извлечение и изменение данных и создание, как
правило, машинно-независимого исполняемого внутреннего кода,
 подсистему поддержки времени исполнения, которая интерпретирует программы манипуляции данными, создающие
пользовательский интерфейс с СУБД
 а также сервисные программы (внешние утилиты), обеспечивающие ряд дополнительных возможностей по обслуживанию
информационной системы.
15 Система управления базами данных (СУБД) - это программное обеспечение, с помощью которого пользователи могут определять,
создавать и поддерживать базу данных, а также осуществлять к ней контролируемый доступ.
Основные функции СУБД
 управление данными во внешней памяти (на дисках);
 управление данными в оперативной памяти с использованием дискового кэша;
 журнализация изменений, резервное копирование и восстановление базы данных после сбоев;
 поддержка языков БД (язык определения данных, язык манипулирования данными).
Обычно современная СУБД содержит следующие компоненты:
 ядро, которое отвечает за управление данными во внешней и оперативной памяти и журнализацию,
 процессор языка базы данных, обеспечивающий оптимизацию запросов на извлечение и изменение данных и создание, как
правило, машинно-независимого исполняемого внутреннего кода,
 подсистему поддержки времени исполнения, которая интерпретирует программы манипуляции данными, создающие
пользовательский интерфейс с СУБД
 а также сервисные программы (внешние утилиты), обеспечивающие ряд дополнительных возможностей по обслуживанию
информационной системы.
16 классификационных признаков, относящихся к СУБД. По языкам общения СУБД делятся
наоткрытые, замкнутые исмешанные. Открытые системы– это системы, в которых для обращения к базам данных используются
универсальные языки программирования. Замкнутые системы имеют собственные языки общения с пользователями БнД.
Почислууровнейвархитектуре различают одноуровневые, двухуровневые, трехуров-
невые системы. В принципе, возможно выделение и большего числа уровней. Под архи-тектурным уровнем СУБД понимают
функциональный компонент, механизмы которого служат для поддержки некоторого уровня абстракции данных(логический и
физический уровень, а также«взгляд» пользователя– внешний уровень).
По выполняемым функциям СУБД делятся на информационныеи операционные. Ин-
формационные СУБД позволяют организовать хранение информации и доступ к ней.Для выполнения более сложной обработки
необходимо писать специальные программы. Операционные СУБД выполняют достаточно сложную
обработку, например,автомати- чески позволяют получать агрегированные показатели, не хранящиеся непосредственно в базе
данных, могут изменять алгоритмы обработки и т.д.
По сфере возможного применения различают универсальныеи специализированные,
обычно проблемно-ориентированные, СУБД.
Системы управления базами данных поддерживают разные типы данных. Набор типов данных, допустимых в разных
СУБД, различен. Кроме того, ряд СУБД позволяет разработчику добавлять новые типы данных и новые операции над этими
данными. Та-кие системы называютсярасширяемыми системами баз данных(РСБД).
17 Непосредственное управление данными во внешней памяти
Эта функция включает обеспечение необходимых структур внешней памяти как для хранения данных, непосредственно входящих в
БД, так и для служебных целей, например, для убыстрения доступа к данным в некоторых случаях (обычно для этого используются
индексы). В некоторых реализациях СУБД активно используются возможности существующих файловых систем, в других работа
производится вплоть до уровня устройств внешней памяти. Но подчеркнем, что в развитых СУБД пользователи в любом случае не
обязаны знать, использует ли СУБД файловую систему, и если использует, то как организованы файлы
Управление буферами оперативной памяти
СУБД обычно работают с БД значительного размера; по крайней мере этот размер обычно существенно больше доступного объема
оперативной памяти. Понятно, что если при обращении к любому элементу данных будет производиться обмен с внешней памятью,
то вся система будет работать со скоростью устройства внешней памяти. Практически единственным способом реального увеличения
этой скорости является буферизация данных в оперативной памяти. При этом, даже если операционная система производит
общесистемную буферизацию (как в случае ОС UNIX), этого недостаточно для целей СУБД, которая располагает гораздо большей
информацией о полезности буферизации той или иной части БД.
Поддержка языков БД
Для работы с базами данных используются специальные языки, в целом называемые языками баз данных. В ранних СУБД
поддерживалось несколько специализированных по своим функциям языков. Чаще всего выделялись два языка - язык определения
схемы БД (SDL - Schema Definition Language) и язык манипулирования данными (DML - Data Manipulation Language). SDL служил
главным образом для определения логической структуры БД, т.е. той структуры БД, какой она представляется пользователям. DML
содержал набор операторов манипулирования данными, т.е. операторов, позволяющих заносить данные в БД, удалять,
модифицировать или выбирать существующие данные. Мы рассмотрим более подробно языки ранних СУБД в следующей лекции.
18 ИТ (Информационные технологии) являются наиболее важной составляющей процесса использования информационных
ресурсов общества. К настоящему времени она прошла несколько эволюционных этапов, смена которых определялась главным
образом развитием научно-технического прогресса, появлением новых технических средств переработки информации.

1-й этап (до второй половины XIX в.) - "ручные" технологии: перо, чернильница, книга, элементарные ручные средства счета.
Коммуникации осуществлялись путём доставки конной почтой писем, пакетов, депеш, в европейских странах
применялся механический телеграф. Основная цель технологий - представление и передача информации в нужной форме.
2-й этап (конец XIX в. - 40-е гг. ХХ в.) - "механические" технологии: пишущая машинка, арифмометр, телеграф, телефон,
диктофон, оснащённая более совершенными средствами доставки почта. Основная цель технологий - представление информации в
нужной форме более удобными средствами, сокращение затрат на исправление потерь и искажений.
3-й этап (40-е - 60-е гг. XX в.) - "электрические" технологии: первые ламповые ЭВМ и соответствующее программное
обеспечение, электрические пишущие машинки, телетайпы (телексы), ксероксы, портативные диктофоны. Организация доставки
информации в заданное время. Акцент в ИТ начинает перемещаться с формы представления информации на формирование её
содержания.
4-й этап (70-е гг. - середина 80-х гг.) - "электронные" технологии, основной инструментарий - большие ЭВМ и создаваемые на
их базе автоматизированные системы управления (АСУ) и информационно-поисковые системы, оснащённые широким спектром
базовых и специализированных программных комплексов. Центр тяжести технологий смещается на формирование содержательной
стороны информации для управленческой среды различных сфер общественной жизни, особенно на организацию аналитической
работы.
5-й этап (с середины 80-х гг.) - "компьютерные" ("новые") технологии, персональный компьютер с широким спектром
стандартных и заказных программных продуктов широкого назначения. Создание систем поддержки принятия решений на
различных уровнях управления. Системы имеют встроенные элементы анализа и искусственного интеллекта, реализуются на
персональном компьютере и используют сетевые технологии и телекоммуникации для работы в сети.
6-й этап (с середины 90-х гг.) - "Internet/Intranet" ("новейшие") технологии. Широко используются в различных областях науки,
техники и бизнеса распределенные системы, глобальные, региональные и локальные компьютерные сети. Развивается электронная
коммерция. Увеличение объемов информации привели к созданию технологии Data Mining.
19 Ба́зада́нных —представленнаяв объективной форме совокупность самостоятельных материалов (статей, расчётов, нормативных
актов, судебных решений и иных подобных материалов), систематизированных таким образом, чтобы эти материалы могли
быть найдены и обработаны с помощью электронной вычислительной машины
Информационная система - это нечто большее, чем просто данные или данные в сочетании с программным обеспечением базы
данных. Полная информационная система, использующая базы данных, состоит из 4-х компонентов: оборудования, программного
обеспечения, данных и людей
Оборудование (или "железо" ) - это набор физических устройств, на которых существует база данных. Оно состоит из одного или
нескольких компьютеров, дисководов, мониторов, принтеров, магнитофонов, соединительных кабелей и других вспомогательных и
соединительных устройств.
Программное обеспечение
Информационная система использующая базу данных, включает в себя 2 вида программного обеспечения.
1. Программное обеспечение общего назначения для поддержания базы данных, обычно называемое системой управления базой
данных (СУБД).
2. Прикладное программное обеспечение, которое использует средства СУБД для выполнения конкретных деловых задач, таких
управление заработной платой, выставление счетов, анализ продаж и т.д.
Прикладное программное обеспечение обычно создается сотрудниками фирмы для решения конкретных задач. Оно может быть
написано на стандартном языке программирования (Кобол, Си) или же на языке (обычно называемом языком 4-го поколения)
входящим в комплект СУБД. Прикладные программы используют средства СУБД для обращения к данным и их обработки, создавая
отчеты, документы и т.д.
Данные в самой базе данных должны быть тщательно и логично организованы. Необходимо проанализировать бизнес- функции,
установить и точно организованы определить элементы данных и отношения между ними, а определения аккуратности внести в
словарь данных. После этого вносить данные в базу данных. Гармонично организованная база данных может стать мощным
источником обеспечения своевременной информацией.
Люди
Пользователи - люди, которым информация базы данных требуется для выполнения их прямых служебных обязанностей, которые
лежат в несколько иной области.
Обслуживающий персонал - люди, чьими прямыми обязанностями является создание и поддержание информационной системы и
соответствующего прикладного программного обеспечения, необходимого пользователям.
Процедуры, которые люди используют для выполнения своих задач в системе, являются важным аспектом. В действительности ни
одна система не автоматизирует полностью работу пользователя. Приходится разрабатывать инструкции, обеспечивающие
бесперебойное взаимодействие между пользователями самой системы и самой системой.
Примером такой системы может стать аудиторский контроль, посредством которого пользователи проверяют, соответствует ли
общая сумма, помещенная в банк, в определенный день, общей сумме полученных в этот день наличных денег, отраженной в системе.
20 Ба́зада́нных —представленнаяв объективной форме совокупность самостоятельных материалов (статей, расчётов, нормативных
актов, судебных решений и иных подобных материалов), систематизированных таким образом, чтобы эти материалы могли
быть найдены и обработаны с помощью электронной вычислительной машины
Программное обеспечение и базы данных служат для существенного облегчения и систематизации информационных данных,
которые хранятся в большом объеме. Для хранения используются базы данных, а для упрощения преподносимой и хранимой
информации применяется разнообразный софт программного обеспечения.
В настоящее время применяется очень большое количество баз данных с собственным интерфейсом и возможностями, к наиболее
распространенным и многофункциональным относятся базы двух категорий:
- операционные;
-непосредственные.
К операционным системам относятся те, которые уже встроены в софт персонального компьютера или прочих цифровых устройств,
например реестр выполнения задач или поисковая система, которая позволяет в скором времени осуществлять поиск файлов в самой
операционной системе. Такие базы данных отличаются простотой и качеством, но ограничением по функционалу, так как они
применяются в основном для поиска и систематизации информационных потоков.
Непосредственные устанавливаются в качестве отдельных программ с электронных носителей. К самым ярким представителям
таких программ относятся NortonCommandet или NortonPro. Две эти программы стали альтернативой "Проводнику" и осуществляют
простой доступ ко всему операционному софту персонального устройства. К прочим возможностям программ относятся
возможности передачи, удаления, классификации и упорядочивания программ, некоторые базы данных оснащаются внутренним
файеролом, то есть устройством поиска вирусных программ и ошибок. Данные программы могут действовать в операционной
системе, но и автономно, когда пользователь начинает работу с Biosa, кстати говоря, еще одной базы данных.
21 Модель базы данных — тип модели данных, которая определяет логическую структуру базы данных и принципиально
определяет, каким образом данные могут быть сохранены, организованы и обработаны. Наиболее популярным примером модели
базы данных является реляционная модель, которая использует табличный формат.

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

Сетевая модель
В сетевой модели данных у родительского элемента может быть несколько потомков, а у дочернего элемента — несколько предков.
Записи в такой модели связаны списками с указателями. IDMS («Интегрированная система управления данными») от
компании Computer Associates international Inc. — пример сетевой СУБД.

Реляционная модель
В реляционной модели, в отличие от иерархической или сетевой, не существует физических отношений. Вся информация хранится
в виде таблиц (отношений), состоящих из рядов и столбцов. А данные двух таблиц связаны общими столбцами, а не физическими
ссылками или указателями. Для манипуляций с рядами данных существуют специальные операторы.
22 Модель базы данных — тип модели данных, которая определяет логическую структуру базы данных и принципиально
определяет, каким образом данные могут быть сохранены, организованы и обработаны. Наиболее популярным примером модели
базы данных является реляционная модель, которая использует табличный формат.
В иерархической модели элементы организованы в структуры, связанные между собой иерархическими или древовидными
связями. Родительский элемент может иметь несколько дочерних элементов. Но у дочернего элемента может быть только один
предок.
«Система управления информацией» (Information Management System) компании IMB — пример иерархической СУБД.
Иерархическая модель организует данные в форме дерева с иерархией родительских и дочерних сегментов. Такая модель
подразумевает возможность существования одинаковых (преимущественно дочерних) элементов. Данные здесь хранятся в серии
записей с прикреплёнными к ним полями значений. Модель собирает вместе все экземпляры определённой записи в виде «типов
записей» — они эквивалентны таблицам в реляционной модели, а отдельные записи — столбцам таблицы. Для создания связей между
типами записей иерархическая модель использует отношения типа «родитель-потомок» вида 1:N. Это достигается путём
использования древовидной структуры — она «позаимствована» из математики, как и теория множеств, используемая в
реляционной модели.
23 Модель базы данных — тип модели данных, которая определяет логическую структуру базы данных и принципиально
определяет, каким образом данные могут быть сохранены, организованы и обработаны. Наиболее популярным примером модели
базы данных является реляционная модель, которая использует табличный формат.
В сетевой модели данных у родительского элемента может быть несколько потомков, а у дочернего элемента — несколько предков.
Записи в такой модели связаны списками с указателями. IDMS («Интегрированная система управления данными») от
компании Computer Associates international Inc. — пример сетевой СУБД.
Сетевая модель позволяет более естественно моделировать отношения между элементами. И хотя эта модель широко применялась
на практике, она так и не стала доминантной по двум основным причинам. Во-первых, компания IBM решила не отказываться от
иерархической модели в расширениях для своих продуктов, таких как IMS и DL/I. Во-вторых, через некоторое время её сменила
реляционная модель, предлагавшая более высокоуровневый, декларативный интерфейс.
24 Модель базы данных — тип модели данных, которая определяет логическую структуру базы данных и принципиально
определяет, каким образом данные могут быть сохранены, организованы и обработаны. Наиболее популярным примером модели
базы данных является реляционная модель, которая использует табличный формат.
В реляционной модели, в отличие от иерархической или сетевой, не существует физических отношений. Вся информация хранится
в виде таблиц (отношений), состоящих из рядов и столбцов. А данные двух таблиц связаны общими столбцами, а не физическими
ссылками или указателями. Для манипуляций с рядами данных существуют специальные операторы.
В отличие от двух других типов СУБД, в реляционных моделях данных нет необходимости просматривать все указатели, что
облегчает выполнение запросов на выборку информации по сравнению с сетевыми и иерархическими СУБД. Это одна из основных
причин, почему реляционная модель оказалась более удобна.
25 Реляционная алгебра - это язык операций, выполняемых над отношениями - таблицами реляционной базы данных. Операции
реляционной алгебры позволяют на основе одного или нескольких отношений создавать другое отношение без изменения самих
исходных отношений. Полученное другое отношение обычно не записывается в базу данных, а существует в результате выполнения
SQL-запроса - массиве, создаваемом функциями для работы с базами данных в языках программирования. Для каждой операции
реляционной алгебры будет дана её реализация в виде запросов на языке SQL.

Операции реляционной алгебры

Основные восемь операций реляционной алгебры


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

Проекция

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

Умножение или декартово произведение является операцией, производимой над двумя отношениями, в результате которой мы

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

возможные сочетания кортежей из начальных отношений

Выборка

Выборка — это операция, которая выделяет множество строк в таблице, удовлетворяющих заданным условиям. Условием может

быть любое логическое выражение.


26 Реляционное исчисление — прикладная ветвь формальной теории, носящей название «исчисления предикатов первого порядка».
В основе исчисления лежит понятие переменной с определенной для неё областью допустимых значений и понятие правильно
построенной формулы, опирающейся на переменные, предикаты и кванторы. Наряду с реляционной алгеброй является способом
получения результирующего отношения в реляционной модели данных. В зависимости от того, что является областью определения
переменной, различают:
 Исчисление кортежей
 Исчисление доменов
Исчисление кортежей Реляционное исчисление кортежей было реализовано при разработке языка ALPHA. Как и в процедурных
языках программирования, в нем сначала необходимо выполнить описание используемых переменных, а после записать выражения.
Исчисление доменов Реляционное исчисление, основанное на доменах, было предложено Лакроиксом и Пиротте, которыми также
был разработан на его основе язык ILL. Среди языков, основанных на исчислении доменов, можно выделить QBE с некоторыми
оговорками, DEDUCE и FQL. Дейт утверждал, что язык QBE содержит элементы исчисления кортежей и доменов, но является более
близким к исчислению доменов. Языком не поддерживается операция отрицания квантора существования (NOT EXISTS), поэтому
его нельзя назвать реляционно полным. Тем не менее, язык QBE достаточно широко распространен в современных СУБД.
Исчисление доменов сходно с исчислением кортежей. Основой любого выражения запроса в исчислении доменов являются
переменные доменов.
27 Реляционные таблицы могут быть связаны друг с другом, следовательно, данные могут извлекаться одновременно из нескольких
таблиц. Таблицы связываются между собой для того, чтобы в конечном счете уменьшить объем БД. Связь каждой пары таблиц
обеспечивается при наличии в них одинаковых столбцов.
Существуют следующие типы информационных связей:
 один-к-одному;
 один-ко-многим;
 многие-ко-многим.
Связь один-к-одному предполагает, что одному атрибуту первой таблицы соответствует только один атрибут второй таблицы и
наоборот.
Связь один-ко-многим предполагает, что одному атрибуту первой таблицы соответствует несколько атрибутов второй таблицы.
Связь многие-ко-многим предполагает, что одному атрибуту первой таблицы соответствует несколько атрибутов второй таблицы и
наоборот.
28 БД можно выделить следующие этапы работы.
I этап. Постановка задачи.
На этом этапе формируется задание по созданию БД. В нем подробно описывается состав базы, назначение и цели ее создания,
а также перечисляется, какие виды работ предполагается осуществлять в этой базе данных (отбор, дополнение, изменение данных,
печать или вывод отчета и т. д).
II этап. Анализ объекта.
На этом этапе рассматривается, из каких объектов может состоять БД, каковы свойства этих объектов. После разбиения БД на
отдельные объекты необходимо рассмотреть свойства каждого из этих объектов, или, другими словами, установить, какими
параметрами описывается каждый объект. Все эти сведения можно располагать в виде отдельных записей и таблиц. Далее
необходимо рассмотреть тип данных каждой отдельной единицы записи. Сведения о типах данных также следует занести в
составляемую таблицу.
III этап. Синтез модели.
На этом этапе по проведенному выше анализу необходимо выбрать определенную модель БД. Далее рассматриваются
достоинства и недостатки каждой модели и сопоставляются с требованиями и задачами создаваемой БД. После такого анализа
выбирают ту модель, которая сможет максимально обеспечить реализацию поставленной задачи. После выбора модели необходимо
нарисовать ее схему с указанием связей между таблицами или узлами.
IV этап. Выбор способов представления информации и программного инструментария.
После создания модели необходимо, в зависимости от выбранного программного продукта, определить форму представления
информации.
В большинстве СУБД данные можно хранить в двух видах:
 с использованием форм;
 без использования форм.
Форма – это созданный пользователем графический интерфейс для ввода данных в базу.
29 Ба́за да́нных —представленнаяв объективной форме совокупность самостоятельных материалов (статей, расчётов, нормативных
актов, судебных решений и иных подобных материалов), систематизированных таким образом, чтобы эти материалы могли
быть найдены и обработаны с помощью электронной вычислительной машины
Перви́чный ключ (англ. primary key) — в реляционной модели данных один из потенциальных ключей отношения, выбранный в
качестве основного ключа (или ключа по умолчанию).
Если в отношении имеется единственный потенциальный ключ, он является и первичным ключом. Если потенциальных ключей
несколько, один из них выбирается в качестве первичного, а другие называют «альтернативными».
Первичные ключи имеют очень важное значение для работы с базой данных как в плане поиска нужных записей, так и с
точки зрения обеспечения ссылочной целостности данных. Но при разработке приложений, взаимодействующих с БД, могут
возникать специфические проблемы.
При разработке структуры базы данных обычно используется один из двух подходов к выбору первичного ключа: назначение в
качестве такового одного или нескольких столбцов таблицы, обеспечивающих возможность однозначно сослаться на данную запись
(будем называть это естественным ключом, иногда используется термин «логический ключ»), либо ввод в структуру таблицы
отдельного столбца, единственное назначение которого – уникально идентифицировать запись («искусственный ключ», называемый
также суррогатным).
30 Ба́за да́нных —представленнаяв объективной форме совокупность самостоятельных материалов (статей, расчётов, нормативных
актов, судебных решений и иных подобных материалов), систематизированных таким образом, чтобы эти материалы могли
быть найдены и обработаны с помощью электронной вычислительной машины
Вне́шний ключ (англ. foreign key) — понятие теории реляционных баз данных, относящееся к ограничениям целостности базы
данных.
Поддержка внешних ключей также называется соблюдением ссылочной целостности. Реляционные СУБД поддерживают
автоматический контроль ссылочной целостности.
31 Жизненный цикл базы данных это период проектирования реализации и поддержки базы данных состоит из семи этапов
Предварительное планирование выполняется в процессе разработки стратегического плана базы данных. Стратегический план
предполагает количество и вид баз данных, которые требуется создать для организации. Когда начинается разработка проекта
реализации, общая информационная модель, созданная в процессе планирования базы данных пересматривается и уточняется.
Предварительное планирование предполагает определение функций и количества используемых прикладных программ,
приложений, находящихся в процессе создания. Эта информация помогает установить связи между текущими приложениями и
определить, каким образом используется информация приложений, а также сформулировать будущие требования к системе.
Проверка осуществимости определяет технологическую, операционную и экономическую осуществимость плана создания базы
данных. Технологическая осуществимость предполагает определение доступности необходимого оборудования и программного
обеспечения, необходимых для работы базы данных: имеются ли в наличии данные ресурсы, или необходимо их приобретение.
Операционная осуществимость связана с определением квалификации и опыта специалистов, работающих с БД. Экономическая
целесообразность предполагает получение определенной выгоды от внедрения базы данных.
Этап определения требований включает выбор целей базы данных, выяснение информационных потребностей различных
подразделений и требований к оборудованию и программному обеспечению. Информационные потребности могут выясняться с
помощью анкет, опросов менеджеров и работников компании, а также на основе документов компании. Общая информационная
модель, созданная на этапе планирования базы данных, разделяется на модели для каждого отдела компании, являющиеся основой
для создания проекта следующего этапа.
Этап концептуального проектирования включает создание концептуальной схемы базы данных. На этом же этапе создаются
подробные модели пользовательских представлений, которые затем преобразуются в концептуальную модель, фиксирующую все
элементы данных, которые будет содержать база данных.
В процессе реализации базы данных выбирается и приобретается СУБД. Затем концептуальная модель преобразуется в проект
реализации базы данных, создается словарь данных, база данных заполняется данными, создаются прикладные программы и
обучаются пользователи. Построение словаря данных как центрального хранилища определений структуры данных – ключевой шаг
в реализации базы данных. Словарь данных предназначен для системного персонала администрирования данных, прикладных
программистов и конечных пользователей.
Оценка базы данных включает опросы пользователей с целью выяснения неучтенных информационных потребностей. При
необходимости вносятся изменения, обеспечивается поддержка системы путем добавления новых программ.
Последний этап – снятие с эксплуатации базы данных. Существует правила, что сведения из базы данных не должны уничтожаться,
а передаются в Государственный архив. Срок хранения в архиве определяется ценностью информации. Так, данные о заработной
плате хранятся 75 лет. В архиве информация хранится на магнитных лентах, поэтому вся база данных переносится на твердый
носитель.
32 логического моделирования, –оценка качества
предлагаемого варианта логической схемы. Эта оценка, как правило, является многоступен-чатой. Первоначально проверяют схему
на соответствие заданным функциям без учета за-держек сигналов. Такая проверка может быть выполнена при относительно
небольших за-тратах машинного времени и позволяет выявить ошибки в структуре, допущенные при син-тезе (неправильные,
лишние или отсутствующие связи, ошибочно выбранные элементы схе-
мы и т.п.). После устранения выявленных ошибок можно продолжить анализ, переходя к ис-пользованию более подробных моделей
блока, например учитывающих задержки элементов. Этот анализ дает возможность выявить критические состязания сигналов,
возникающие в асинхронных схемах, а также обнаружить другие причины сбоев. Поскольку анализ может быть выполнен для
нескольких сравниваемых вариантов схем, есть возможность выбрать
наилучший из них, например, с позиций быстродействия. Тем самым на основе анализа ре-шается задача синтеза схем
33 Физи́ческое модели́рование — метод экспериментального изучения различных физических объектов или явлений, основанный
на использовании модели, имеющей ту же физическую природу, что и изучаемый объект[1].
Метод заключается в создании лабораторной физической модели явления в уменьшенных масштабах и проведении экспериментов на
этой модели. Выводы и данные, полученные в этих экспериментах, распространяются затем на явление в реальных масштабах.
Метод применяется при следующих условиях:
 Исчерпывающе точного математического описания явления на данном уровне развития науки не существует, или такое описание
слишком громоздко и требует для расчётов большого объёма исходных данных, получение которых затруднительно.
 Воспроизведение исследуемого физического явления в целях эксперимента в реальных масштабах невозможно, нежелательно или
слишком затратно (например, цунами).
Метод может дать надёжные результаты, лишь в случае соблюдения геометрического и физического подобия реального явления и
модели.
В широком смысле, любой лабораторный физический эксперимент является моделированием, поскольку в эксперименте
наблюдается конкретный случай явления в частных условиях, а требуется получить общие закономерности для всего класса
подобных явлений в широком диапазоне условий. Искусство экспериментатора заключается в достижении физического
подобия между явлением, наблюдаемым в лабораторных условиях и всем классом изучаемых явлений.
34 Концептуальная модель - это отражение предметной области, для которой разрабатывается база данных. Не вдаваясь в теорию,
отметим, что это некая диаграмма с принятыми обозначениями элементов. Так, все объекты, обозначающие вещи, обозначаются в
виде прямоугольника. Атрибуты, характеризующие объект - в виде овала, а связи между объектами - ромбами. Мощность связи
обозначаются стрелками (в направлении, где мощность равна многим - двойная стрелка, а со стороны, где она равна единице -
одинарная).
Концептуальное проектирование начинается с анализа предметной области, включает анализ концептуальных требований и
информационных потребностей, выявление информационных объектов и связей между ними, построение концептуальной модели
(схемы) данных.
Главными элементами концептуальной модели данных являются объекты и отношения.
Объекты представляют собой любой конкретный (реальный) объект в рассматриваемой области.
Исходя из спецификации требования, определим основные типы сущностей.
Сущностьюназывается некоторая принятая в конкретной постановке задачи абстракция реального мира, процесса или явления, о
котором необходимо хранить информацию в системе. В качестве синонима термина «сущность» используется также термин
«информационный объект».
Объекты в каждый момент времени характеризуются определенным состоянием, которое описывается набором свойств и отношений
(или связей) с другими объектами.
35 Нормальная форма — свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности,
потенциально приводящей к логически ошибочным результатам выборки или изменения данных. Нормальная форма определяется
как совокупность требований, которым должно удовлетворять отношение.
Процесс преобразования отношений базы данных к виду, отвечающему нормальным формам, называется нормализацией.
Нормализация предназначена для приведения структуры БД к виду, обеспечивающему минимальную логическую избыточность, и
не имеет целью уменьшение или увеличение производительности работы или же уменьшение или увеличение физического объёма
базы данных.[1] Конечной целью нормализации является уменьшение потенциальной противоречивости хранимой в базе данных
информации.
36 Нормализация отношений (таблиц) — одна из основополагающих частей теории реляционных баз данных. Нормализация имеет
своей целью избавиться от избыточности в отношениях и модифицировать их структуру таким образом, чтобы процесс работы с
ними не был обременён различными посторонними сложностями. При игнорировании такого подхода эффективность
проектирования стремительно снижается, что вкупе с прочими подобными вольностями может привести к критическим
последствиям.
Любому специалисту, по роду своей деятельности так или иначе связанному с проектированием реляционных баз данных, полезно
понимать и уметь осуществить нормализацию отношений. И этим постом хотелось бы начать небольшую серию публикаций,
посвящённых нормальным формам, имеющую целью дать тем читателям Хабрахабра, которые по различным обстоятельствам ещё
не освоили эту тему, возможность легко заполнить этот пробел в знаниях
Статья не имеет своей целью подробное и точное изложение принципов нормализациии, поскольку это, очевидно, невозможно в
рамках блога в силу больших объёмов информации, необходимых для публикации при таком подходе. Кроме этого, для такой цели
существует большое количество литературы, написанной прекрасными специалистами. Моя же задача, как я считаю, заключается в
том, чтобы популярно продемонстрировать и объяснить основные принципы.
37 К основным средствам защиты информации можно отнести следующие средства:
- парольная защита;
- шифрование данных и программ;
- установление прав доступа к объектам БД;
- защита полей и записей таблиц БД.
Парольная защита представляет простой и эффективный способ защиты БД от несанкционированного доступа. Пароли
устанавливаются конечными пользователями или администраторами БД. Учет и хранение паролей производится самой СУБД.
Обычно пароли хранятся в определенных системных файлах СУБД в зашифрованном виде. Поэтому просто найти и определить
пароль невозможно. После ввода пароля пользователю СУБД предоставляются все возможности по работе с защищенной БД.
Шифрование данных (всей базы или отдельных таблиц) применяется для того, чтобы другие программы не могли прочитать
данные. Шифрование исходных текстов программ позволяет скрыть от несанкционированного пользователя описание
соответствующих алгоритмов.
В целях контроля использования основных ресурсов СУБД во многих системах имеются средства установления прав доступа к
объектам БД. Права доступа определяют возможные действия над объектами. Владелец объекта (пользователь, создавший объект),
а также администратор БД имеют все права. Остальные пользователи к разным объектам могут иметь различные уровни доступа.
38 Запрос представляет собой специальным образом описанное требование, определяющие состав производимых над базой данных
операций по выборке, удалению или модификации хранимых данных. Для подготовки запросов с помощью различных СУБД чаще
всего используются два основных языка описания запросов: язык QBE (Query By Example) - язык запросов по образцу; язык SQL
(Structured Query Language) -структурированный язык запросов.
В языке QBE (Query-by-Example - язык запросов по образцу) используется визуальный подход для организации доступа к
информации в базе данных, основанный на применении шаблонов запросов. Применение QBE осуществляется путем задания
образцов значений в шаблоне запроса, предусматривающем такой тип доступа к базе данных, который требуется в данный момент,
например получение ответа на некоторый вопрос.
Язык QBE был разработан компанией IBM в 1970-х годах и предназначался для пользователей, заинтересованных в выборе
информации из баз данных. Этот язык получил у пользователей столь широкое признание, что в настоящее время в той или иной
мере он реализован практически во всех популярных СУБД, включая и Microsoft Access. Средства поддержки языка QBE в СУБД
Microsoft Access весьма просты в эксплуатации и в то же время представляют пользователям достаточно широкий спектр
возможностей работы с данными. Средства языка QBE могут использоваться для ввода запросов к информации, сохраняемой в одной
или нескольких таблицах, а так же для определения набора полей, которые должны присутствовать в результирующей таблице.
Отбор записей может, проводится по конкретному или общему критерию, и предусматривать выполнение необходимых вычислений
на основе информации, сохраняемой в таблицах. Кроме того, средства языка QBE можно использовать для выполнения различных
операций над таблицами, например, для вставки и удаления записей, модификации значений полей или создания новых полей и
таблиц.
39 Запрос представляет собой специальным образом описанное требование, определяющие состав производимых над базой данных
операций по выборке, удалению или модификации хранимых данных. Для подготовки запросов с помощью различных СУБД чаще
всего используются два основных языка описания запросов: язык QBE (Query By Example) - язык запросов по образцу; язык SQL
(Structured Query Language) -структурированный язык запросов.
В языке QBE (Query-by-Example - язык запросов по образцу) используется визуальный подход для организации доступа к
информации в базе данных, основанный на применении шаблонов запросов. Применение QBE осуществляется путем задания
образцов значений в шаблоне запроса, предусматривающем такой тип доступа к базе данных, который требуется в данный момент,
например получение ответа на некоторый вопрос.
Язык QBE был разработан компанией IBM в 1970-х годах и предназначался для пользователей, заинтересованных в выборе
информации из баз данных. Этот язык получил у пользователей столь широкое признание, что в настоящее время в той или иной
мере он реализован практически во всех популярных СУБД, включая и Microsoft Access. Средства поддержки языка QBE в СУБД
Microsoft Access весьма просты в эксплуатации и в то же время представляют пользователям достаточно широкий спектр
возможностей работы с данными. Средства языка QBE могут использоваться для ввода запросов к информации, сохраняемой в одной
или нескольких таблицах, а так же для определения набора полей, которые должны присутствовать в результирующей таблице.
Отбор записей может, проводится по конкретному или общему критерию, и предусматривать выполнение необходимых вычислений
на основе информации, сохраняемой в таблицах. Кроме того, средства языка QBE можно использовать для выполнения различных
операций над таблицами, например, для вставки и удаления записей, модификации значений полей или создания новых полей и
таблиц.
40 В SQL предусмотрено три уровня безопасности. Во-первых, пользователи должны быть зарегистрированы в SQL Server или иметь
действительную учетную запись в NT, с правом доступа SQL Server. Регистрация в SQL Server не дает пользователям права
обращаться ни к одной из баз данных SQL Server. Разрешение на доступ к БД выдается пользователям на втором уровне защиты. На
третьем уровне администратор может назначать права доступа к объектам в базе данных; например, можно указать, какие таблицы
и представления данных открыты пользователю и какие хранимые процедуры могут выполнять члены группы. Те же три уровня
безопасности предусмотрены в Windows 2000 и NT, поэтому знания о системе безопасности Windows применимы и к SQL Server.
В SQL Server реализованы два режима аутентификации: режим безопасности NT и смешанный режим. Если выбрать режим NT и
установить соответствие между процедурами пользовательской регистрации в NT и SQL Server, то пользователи,
зарегистрировавшись в NT, могут установить соединение и с SQL Server. В этом режиме пользователи, не опознанные NT, не могут
обращаться к SQL Server. В смешанном режиме пользователи, прошедшие регистрацию в NT, соединяются с NT и SQL Server так
же, как и в режиме NT, а пользователи, не опознанные NT, могут предъявить имя и пароль для доступа к SQL Server. Альтернативный
вариант - аутентификация в SQL Server зарегистрированных пользователей NT с указанием отдельного имени и пароля в SQL Server,
а не Windows NT. Обычно применяется режим безопасности NT, за исключением тех случаев, когда необходим смешанный режим.

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

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

С помощью SQL программист описывает только то, какие данные нужно извлечь или модифицировать. То, каким образом это
сделать, решает СУБД непосредственно при обработке SQL-запроса. Однако не стоит думать, что это полностью универсальный
принцип - программист описывает набор данных для выборки или модификации, однако ему при этом полезно представлять, как
СУБД будет разбирать текст его запроса. Чем сложнее сконструирован запрос, тем больше он допускает вариантов написания,
различных по скорости выполнения, но одинаковых по итоговому набору данных.
42 SQL Server Компонент Service Broker обеспечивает собственную поддержку приложений обмена сообщениями и приложений с
очередями сообщений в компоненте Компонент SQL Server Database Engine. Это облегчает разработчикам создание сложных
приложений, использующих компоненты Компонент Database Engine для связи между разнородными базами данных. Разработчики
могут использовать компонент Компонент Service Broker для облегчения создания распределенных и надежных приложений.
Разработчики приложений, использующие компонент Компонент Service Broker , могут распределять рабочую нагрузку между
несколькими базами данных без программирования сложного взаимодействия и создания внутреннего обмена сообщениями. Это
сокращает разработку и проверочную работу, потому что компонент Компонент Service Broker обеспечивает взаимодействие в
контексте диалога.Кроме того, это повышает производительность. Например, сервер, обслуживающий клиентские запросы базы
данных, поддерживающие веб-сайты, может записывать информацию и отправлять ресурсоемкие задачи в очереди серверных баз
данных. Компонент Service Broker гарантирует, что управление всеми задачами ведется в контексте транзакций, чтобы обеспечить
надежность и техническое единообразие.
43 Системы управления базами данных (СУБД). Развитие информационных технологий привело к созданию компьютерных
баз данных. Создание баз данных, а также операции поиска и сортировки данных выполняются специальными программами
- системами управления базами данных (СУБД). Таким образом, необходимо различать собственно базы данных (БД), которые
являются упорядоченными наборами данных, и системы управления базами данных (СУБД) - программы, управляющие хранением
и обработкой данных.
Система управления базами данных (СУБД) - это программа, позволяющая создавать базы данных, а также
обеспечивающая обработку (сортировку) и поиск данных.
В теории СУБД выделяют три основные типы организации БД: иерархическая (элементы связаны отношением подчиненности, при
этом каждый элемент может подчиняться только одному какому-нибудь элементу); сетевая (расширение иерархического – в отличие
от иерархического в сетевой модели запись-потомок может иметь любое количество предшествующих записи); реляционная (БД
представлена в виде совокупности взаимосвязанных таблиц).
44 Система управления базами данных (СУБД) MS Access является системой управления реляционными БД, работающей в среде
Windows XP. В ней предусмотрены все необходимые средства для определения и обработки данных, а также для управления ими
при работе с большими объемами информации. СУБД позволяет создавать приложения, работающие в среде Windows и полностью
соответствующие потребностям заказчика.
Таблица - это объект, определяемый для хранения данных. Каждая таблица включает информацию об объекте реального мира,
например о клиентах фирмы. Таблица состоит из заголовка и тела. Заголовок включает имена атрибутов объекта (столбцов) и их
свойства, например фамилию, телефон и адрес клиента.
Запрос - это объект, который позволяет пользователю получить нужные данные из одной или нескольких базовых таблиц и других
запросов. В запросе можно указать условия, которым должны удовлетворять данные. Благодаря этому запрос позволяет из большого
массива информации, хранимой в БД, извлекать только нужные данные. Для создания запроса используют запрос по
образцу (QBE) или инструкции SQL. Можно создавать запросы на выборку, обновление, удаление или на добавление данных.
Форма - это объект, предназначенный в основном для ввода данных, отображения их на экране или управления работой приложения.
Формы используются для того, чтобы реализовать требования заказчика к представлению данных из таблиц и запросов. Формы
можно распечатать. С помощью формы можно в ответ на некоторое событие запустить макрос или процедуру, выполняющие
определенную обработку данных.
Отчет - это объект, предназначенный для создания документа, который впоследствии может быть распечатан или включен в до-
кумент другого приложения. Прежде чем выводить отчет на принтер, его можно просмотреть на экране.
Макрос - это объект, представляющий собой структурированное описание одного или нескольких действий, которые будут вы-
полняться в ответ на определенное событие. Например, можно определить макрос, который в ответ на выбор некоторого элемента в
основной форме открывает другую форму. С помощью другого макроса можно осуществить проверку значения поля при изменении
его содержимого.
45 Тип данных в MS Access (Data Type). Тип данных определяется значениями, которые предполагается хранить в поле, и
операциями, которые будут выполняться с этими значениями. В Access допускается использование двенадцати типов данных.
 текстовый (Text) — используется для хранения текста или комбинаций алфавитно-цифровых знаков, не применяемых в расчетах
(например, код товара). Максимальная длина поля 255 знаков.
 Поле МЕМО (Memo) — используется для хранения обычного текста или комбинаций алфавитно-цифровых знаков длиной более
255 знаков. Поля с этим типом данных в базах данных формата Access 2007 поддерживают также форматирование текста. Это
единственный в Access тип данных, обеспечивающий встроенную поддержку отображения и хранения форматированного текста.
 числовой (Number) — служит для хранения числовых значений (целых или дробных), предназначенных для вычислений,
исключением являются денежные значения, для которых используется тип данных Денежный(Currency). Размер поля 1, 2, 4 и 8
байтов, или 16 байтов (если используется для кода репликации) зависит от типа чисел, вводимых в поле.
 Дата/время (Date/Time) — используется для хранения значений даты и времени в виде 8-байтовых чисел двойной точности с
плавающей запятой. Целая часть значения, расположенная слева от десятичной запятой, представляет собой дату. Дробная часть,
расположенная справа от десятичной запятой, — это время. Хранение значений даты и времени в числовом формате позволяет
выполнять различные вычисления с этими данными.
 Денежный (Currency) — используется для хранения денежных значений в виде 8-байтовых чисел с точностью до четырех знаков
после запятой. Этот тип данных применяется для хранения финансовых данных и в тех случаях, когда значения не должны
округляться.
 Счетчик (AutoNumber) — используется для уникальных числовых 4-байтовых значений, которые автоматически вводит Access при
добавлении записи. Вводимые числа могут последовательно увеличиваться на указанное приращение или выбираться случайно.
Обычно используются в первичных ключах.
 Логический (Yes/No) — применяется для хранения логических значений, которые могут содержать одно из двух значений: Да/Нет,
Истина/Ложь или Вкл/Выкл. (8 битов = 1 байт). Используется 1 для значений Да и 0 для значений Нет. Размер равен 1 биту.
 Поле объекта OLE (OLE Object) — используется для хранения изображений, документов, диаграмм и других объектов из
приложений MS Office и других программ Windows в виде растровых изображений, которые затем отображаются в элементах
управления форм или отчетов, связанных с этим полем таблицы.
 46 текстовый (Text) — используется для хранения текста или комбинаций алфавитно-цифровых знаков, не применяемых в расчетах
(например, код товара). Максимальная длина поля 255 знаков.
 Поле МЕМО (Memo) — используется для хранения обычного текста или комбинаций алфавитно-цифровых знаков длиной более
255 знаков. Поля с этим типом данных в базах данных формата Access 2007 поддерживают также форматирование текста. Это
единственный в Access тип данных, обеспечивающий встроенную поддержку отображения и хранения форматированного текста.
 числовой (Number) — служит для хранения числовых значений (целых или дробных), предназначенных для вычислений,
исключением являются денежные значения, для которых используется тип данных Денежный(Currency). Размер поля 1, 2, 4 и 8
байтов, или 16 байтов (если используется для кода репликации) зависит от типа чисел, вводимых в поле.
 Дата/время (Date/Time) — используется для хранения значений даты и времени в виде 8-байтовых чисел двойной точности с
плавающей запятой. Целая часть значения, расположенная слева от десятичной запятой, представляет собой дату. Дробная часть,
расположенная справа от десятичной запятой, — это время. Хранение значений даты и времени в числовом формате позволяет
выполнять различные вычисления с этими данными.
 Денежный (Currency) — используется для хранения денежных значений в виде 8-байтовых чисел с точностью до четырех знаков
после запятой. Этот тип данных применяется для хранения финансовых данных и в тех случаях, когда значения не должны
округляться.
 Счетчик (AutoNumber) — используется для уникальных числовых 4-байтовых значений, которые автоматически вводит Access при
добавлении записи. Вводимые числа могут последовательно увеличиваться на указанное приращение или выбираться случайно.
Обычно используются в первичных ключах.
 Логический (Yes/No) — применяется для хранения логических значений, которые могут содержать одно из двух значений: Да/Нет,
Истина/Ложь или Вкл/Выкл. (8 битов = 1 байт). Используется 1 для значений Да и 0 для значений Нет. Размер равен 1 биту.
 Поле объекта OLE (OLE Object) — используется для хранения изображений, документов, диаграмм и других объектов из
приложений MS Office и других программ Windows в виде растровых изображений, которые затем отображаются в элементах
управления форм или отчетов, связанных с этим полем таблицы.

48 Концептуа́льная моде́ль (англ. conceptual model) — это модель, представленная множеством понятий и связей между ними,
определяющих смысловую структуру рассматриваемой предметной областиили её конкретного объекта.
Концептуальная модель — модель предметной области, состоящей из перечня взаимосвязанных понятий, используемых для
описания этой области, вместе со свойствами и характеристиками, классификацией этих понятий, по типам, ситуациям, признакам в
данной области и законов протекания процессов в ней. (Толковый словарь по искусственному интеллекту)
Концептуальная (содержательная) модель — это структура моделируемой системы, свойства её элементов и причинно-следственные
связи, присущие системе и существенные для достижения цели моделирования.
ПРЕДМЕТНАЯ ОБЛАСТЬ (Универсум рассуждения) (область теории)
- множество объектов, рассматриваемыхв пределах отдельного рассуждения, научной теории. П. о. включает прежде всего индивид
ы, т. е. элементарные объекты, изучаемые теорией, а также свойства, отношения и функции, рассматриваемые втеории. Напр., П. о.
в зоологии служит множество животных, в теории чисел - натуральный ряд чисел, в логикепредикатов - любая фиксированная обла
сть, содержащая по меньшей мере один предмет.
П. о., соединяющая в единство разнотипные объекты, изучаемые в какой-
то теории, представляет собойлогическую абстракцию. Допущение существования П.о. нетривиально, ибо в обычных рассуждения
х далеконе всегда удается удовлетворить ему естественным образом
49 Доступ к записям базы данных может быть выполнен либо путем последовательной обработки всей области БД, либо по ключу
(базы (данных, первичному, вторичному), либо по структуре. Рассмотрим некоторые методы поиска информации подробнее.

1. Последовательная обработка области БД. Областью БД может быть файл, часть файла, несколько файлов или другое множество
блоков. Обычно области присваивается имя, ее физические границы задаются при описании БД. Последовательная обработка
предполагает выборку записей из области БД независимо от структурных связей (ассоциаций), в которых участвуют записи. Система
последовательно перебирает блоки области, пропускает свободные участки и выдает пользователю записи БД в физической
последовательности их хранения. Если записи в БД отсортированы, то поиск продолжается до тех пор, пока значение ключа записи
не станет больше заданного. Разновидностью последовательного поиска отсортированной БД является блочный поиск: вначале
отыскивается нужный блок (совокупность записей), а затем уже нужная запись внутри блока.
2. Доступ по ключу БД. Ключ базы данных присваивается для каждой записи системой и определяет расположение записи в памяти
ЭВМ. Зная ключ, СУБД может наиболее быстро извлечь требуемую запись.

3. Доступ по структуре. Здесь имеется возможность перехода по указателям от одной записи какого-либо связанного списка к другой.
Можно извлечь следующую запись в экземпляре группового от ношения, предыдущую и, наконец, владельца. Такой доступ
используется для поиска записей в линейных, нелинейных, древовидных, сетевых и других прямых структурах. Прямая структура
построена по принципу "объект - атрибуты", а инвертированная структура данных реализует принцип "атрибут - объекты" (например,
должность - сотрудники).
50 Тип данных в MS Access (Data Type). Тип данных определяется значениями, которые предполагается хранить в поле, и
операциями, которые будут выполняться с этими значениями. В Access допускается использование двенадцати типов данных.
 текстовый (Text) — используется для хранения текста или комбинаций алфавитно-цифровых знаков, не применяемых в расчетах
(например, код товара). Максимальная длина поля 255 знаков.
 Поле МЕМО (Memo) — используется для хранения обычного текста или комбинаций алфавитно-цифровых знаков длиной более
255 знаков. Поля с этим типом данных в базах данных формата Access 2007 поддерживают также форматирование текста. Это
единственный в Access тип данных, обеспечивающий встроенную поддержку отображения и хранения форматированного текста.
 числовой (Number) — служит для хранения числовых значений (целых или дробных), предназначенных для вычислений,
исключением являются денежные значения, для которых используется тип данных Денежный(Currency). Размер поля 1, 2, 4 и 8
байтов, или 16 байтов (если используется для кода репликации) зависит от типа чисел, вводимых в поле.
 Дата/время (Date/Time) — используется для хранения значений даты и времени в виде 8-байтовых чисел двойной точности с
плавающей запятой. Целая часть значения, расположенная слева от десятичной запятой, представляет собой дату. Дробная часть,
расположенная справа от десятичной запятой, — это время. Хранение значений даты и времени в числовом формате позволяет
выполнять различные вычисления с этими данными.
 Денежный (Currency) — используется для хранения денежных значений в виде 8-байтовых чисел с точностью до четырех знаков
после запятой. Этот тип данных применяется для хранения финансовых данных и в тех случаях, когда значения не должны
округляться.
 Счетчик (AutoNumber) — используется для уникальных числовых 4-байтовых значений, которые автоматически вводит Access при
добавлении записи. Вводимые числа могут последовательно увеличиваться на указанное приращение или выбираться случайно.
Обычно используются в первичных ключах.
 Логический (Yes/No) — применяется для хранения логических значений, которые могут содержать одно из двух значений: Да/Нет,
Истина/Ложь или Вкл/Выкл. (8 битов = 1 байт). Используется 1 для значений Да и 0 для значений Нет. Размер равен 1 биту.
 Поле объекта OLE (OLE Object) — используется для хранения изображений, документов, диаграмм и других объектов из
приложений MS Office и других программ Windows в виде растровых изображений, которые затем отображаются в элементах
управления форм или отчетов, связанных с этим полем таблицы.
51 SQL (ˈɛsˈkjuˈɛl; англ. structured query language — «язык структурированных запросов») — декларативный язык
программирования, применяемый для создания, модификации и управления данными в реляционной базе данных, управляемой
соответствующей системой управления базами данных.
Является прежде всего информационно-логическим языком, предназначенным для описания, изменения и извлечения данных,
хранимых в реляционных базах данных. SQL считается языком программирования, в общем случае (без ряда современных
расширений) не является тьюринг-полным, но вместе с тем стандарт языка спецификацией SQL/PSM предусматривает возможность
его процедурных расширений.
Изначально SQL был основным способом работы пользователя с базой данных и позволял выполнять следующий набор операций:
 создание в базе данных новой таблицы;
 добавление в таблицу новых записей;
 изменение записей;
 удаление записей;
 выборка записей из одной или нескольких таблиц (в соответствии с заданным условием);
 изменение структур таблиц.
Со временем SQL усложнился — обогатился новыми конструкциями, обеспечил возможность описания и управления новыми
хранимыми объектами (например, индексы, представления, триггеры и хранимые процедуры) — и стал приобретать черты,
свойственные языкам программирования.
При всех своих изменениях SQL остаётся самым распространённым лингвистическим средством для взаимодействия прикладного
программного обеспечения с базами данных. В то же время современные СУБД, а также информационные системы, использующие
СУБД, предоставляют пользователю развитые средства визуального построения запросов.
52 SQL (ˈɛsˈkjuˈɛl; англ. structured query language — «язык структурированных запросов») — декларативный язык
программирования, применяемый для создания, модификации и управления данными в реляционной базе данных, управляемой
соответствующей системой управления базами данных.
Является прежде всего информационно-логическим языком, предназначенным для описания, изменения и извлечения данных,
хранимых в реляционных базах данных. SQL считается языком программирования, в общем случае (без ряда современных
расширений) не является тьюринг-полным, но вместе с тем стандарт языка спецификацией SQL/PSM предусматривает возможность
его процедурных расширений.
В начале 1970-х годов в одной из исследовательских лабораторий компании IBM была разработана экспериментальная
реляционная СУБД IBM System R, для которой затем был создан специальный язык SEQUEL, позволявший относительно просто
управлять данными в этой СУБД. Аббревиатура SEQUEL расшифровывалась как Structured English QUEry Language —
«структурированный английский язык запросов». Позже по юридическим соображениям [4] язык SEQUEL был переименован в SQL.
Когда в 1986 году первый стандарт языка SQL был принят ANSI (American National Standards Institute), официальным
произношением стало [,es kju:' el] — эс-кью-эл. Несмотря на это, англоязычные специалисты зачастую продолжают читать SQL
как сиквел (по-русски часто говорят «эс-ку-эль»).
Целью разработки было создание простого непроцедурного языка, которым мог воспользоваться любой пользователь, даже не
имеющий навыков программирования[5]. Собственно разработкой языка запросов занимались Дональд Чэмбэрлин (Donald D.
Chamberlin) и Рэй Бойс (Ray Boyce). Пэт Селинджер (Pat Selinger) занималась разработкой стоимостного оптимизатора (cost-based
optimizer), Рэймонд Лори (Raymond Lorie) занимался компилятором запросов.
Стандарт SQL1 разделялся на два уровня. Первый уровень представлял собой подмножество второго уровня, описывавшего весь
документ в целом. То есть, такая структура предусматривала, что не все спецификации стандарта SQL1 будут относиться к Уровню
1. Тем самым поставщик, заявлявший о поддержке данного стандарта, должен был заявлять об уровне, которому соответствует его
реализация языка SQL. Это значительно облегчило принятие и поддержку стандарта, поскольку производители могли реализовывать
его поддержку в два этапа.
Со временем к стандарту накопилось несколько замечаний и пожеланий, особенно с точки зрения обеспечения целостности и
корректности данных, в результате чего в 1989 году данный стандарт был расширен, получив название SQL89. В частности, в него
была добавлена концепция первичного и внешнего ключей. ISO-версия документа получила название ISO 9075:1989 «Database
Language SQL with Integrity Enhancements» (Язык баз данных SQL с добавлением контроля целостности). Параллельно была
закончена и ANSI-версия.

53 Независимость от конкретных СУБД.


Все ведущие поставщики СУБД используют SQL, и ни одна новая СУБД, не поддерживающая SQL, не может рассчитывать на успех.
Реляционную базу данных и программы, которые с ней работают, можно перенести с одной СУБД на другую, с минимальными
доработками и переподготовкой персонала. Программные средства, входящие в состав СУБД для персональных компьютеров, такие
как программы для создания запросов, генераторы отчетов и генераторы приложений, работают с реляционными базами данных
многих типов. Таким образом, SQL обеспечивает независимость от конкретных СУБД, что является одной из наиболее важных
причин его популярности.
5.3.2. Переносимость с одной вычислительной системы на другие.
Поставщики СУБД предлагают программные продукты для различных вычислительных систем: от персональных компьютеров и
рабочих станций до локальных сетей, мини-компьютеров и больших ЭВМ. Приложения, созданные с помощью SQL и рассчитанные
на однопользовательские системе, по мере своего развития могут быть перенесены в более крупные системы. Информация из
корпоративных реляционных баз данных может быть загружена в базы данных отдельных подразделений или в личные базы данных.
Наконец, приложения для реляционных баз данных можно вначале смоделировать на экономичных персональных компьютерах, а
затем перенести на дорогие многопользовательские системы.
5.3.3. Стандарты языка SQL.
Официальный стандарт языка SQL был опубликован Американским институтом национальных стандартов (American National
Standards Institute – ANSI) и Международной организацией по стандартам (International Standards Organization – ISO) в 1986 году и
значительно расширен в 1992 году.

5.3.4. Протокол ODBC и компания Microsoft.


Компания Microsoft рассматривает доступ к базам данных как важную часть своей операционной системы Windows. Стандартом
этой компании по обеспечению доступа к базам данных является ODBC (Open Database Connectivity – взаимодействие с открытыми
базами данных) – программный интерфейс, основанный на SQL. Протокол ODBC поддерживается наиболее распространенными
приложениями Windows (электронными таблицами, текстовыми процессорами, базами данных и т.п.), разработанными как самой
компанией Microsoft, так и другими ведущими поставщиками. Поддержка JDBC обеспечивается всеми ведущими реляционными
базами данных. Кроме того, ODBC опирается на стандарты, одобренные консорциумом поставщиков SQL Access Group, что делает
ODBC как стандартом де-факто компании Microsoft, так и стандартом, независимым от конкретных СУБД.
5.3.5. Реляционная основа.
SQL является языком реляционных баз данных, поэтому он стал популярным тогда, когда популярной стала реляционная модель
представления данных. Табличная структура реляционной базы данных интуитивно понятна пользователям, поэтому язык SQL
является простым и легким для изучения. Реляционная модель имеет солидный теоретический фундамент, на котором были основаны
эволюция и реализация реляционных баз данных. На волне популярности, вызванной успехом реляционной модели, SQL
стал единственным языком для реляционных баз данных.
5.3.6. Высокоуровневая структура, напоминающая английский язык.
Операторы SQL выглядят как обычные английские предложения, что упрощает их изучение и понимание. Частично это обусловлено
тем, что операторы SQL описывают данные, которые необходимо получить, а не определяют способ их поиска. Таблицы и столбцы
в реляционной базе данных могут иметь длинные описательные имена. В результате большинство операторов SQL означают именно
то, что точно соответствует их именам, поэтому их можно читать как простые, понятные предложения.
54 SQL(StructuredQueryLanguage— «язык структурированных запросов») — универсальный компьютерный язык, применяемый для
создания, модификации и управления данными в реляционных базах данных. ЯзыкSQLосновывается на реляционной алгебре и
представляет собой совокупность операторов.
сновные операторы языка SQL рассмотрим, опираясь на его реализацию в стандартном интерфейсе ODBC (Open DataBase
Connectivity – совместимость открытых баз данных) фирмы Microsoft.Операторы языка можно условно разделить на два подъязыка:
язык определения данных (Data Definition Language - DDL) и язык манипулирования данными (Data Manipulation Language - DML).
Оператор SELECT — один из самых важных операторов этого языка, применяемый для выбора данных. Синтаксис этого оператора
имеет следующий вид:
SELECT column FROM table [WHERE where-clause] [ORDER BY order-by-clause]
Оператор UPDATE
Для изменения значений в одной или нескольких колонках таблицы применяется оператор UPDATE. Синтаксис этого оператора
имеет вид:
UPDATE table SET column1 = expression1 WHERE criteria
ператор DELETE
Для удаления строк из таблиц следует использовать оператор DELETE, синтаксис которого имеет вид:
DELETE FROM table WHERE criteria
Оператор INSERT
Для добавления записей в таблицы следует использовать оператор INSERT, синтаксис которого имеет вид:
INSERT INTO table ( [column_list] VALUES ( expression [, …] )
55 Числовые функции.Предназначены для вычисления степени числа, абсолютного значения, округления и усечения числа с
заданной точностью, вычисления тригонометрических значений. Опишем некоторые числовые функции.
Функция ABS(n) возвращает абсолютное значение аргумента n, имеющего числовой тип.
Функция ROUND(n, [r]) осуществляет округление значения аргумента n, имеющего числовой тип, с точностью до количества
указанных знаков r. При этом если значение r положительно, то округление производится до указанного количества знаков после
запятой, если значение r отрицательно, то округление производится до указанного количества знаков до запятой. При r = 0 функция
возвращает округленную целую часть аргумента n.
Символьные функции. Предназначены для работы со строками. Они могут возвращать либо строку, либо целое значение.Ниже
приводится описание некоторых символьных функций.
Функция UPPER(str) возвращает строку str, все символы которой преобразованы в верхний регистр.
Функция LENGTH(str) возвращает длину строки str в символах.
Функция SUBSTR(str, n, m) выделяет из строки str подстроку длины n, начиная с символа в позиции m.
Функции преобразования типа. В основном используются для преобразования данных символьного типа в числовой или в тип
DATE и, наоборот, для преобразования данных числового типа или типа DATE в символьный тип. Преобразование осуществляется
в соответствии с задаваемым форматом. Формат преобразования имеет вид символьной строки, где каждый символ или группа
символов имеет определенное назначение.
Групповые функции.Выполняют операции над группами строк.
Функция COUNT({*}) – возвращает количество строк в группе.
56 SQL Server Компонент Service Broker обеспечивает собственную поддержку приложений обмена сообщениями и приложений с
очередями сообщений в компоненте Компонент SQL Server Database Engine. Это облегчает разработчикам создание сложных
приложений, использующих компоненты Компонент Database Engine для связи между разнородными базами данных. Разработчики
могут использовать компонент Компонент Service Broker для облегчения создания распределенных и надежных приложений.
Разработчики приложений, использующие компонент Компонент Service Broker , могут распределять рабочую нагрузку между
несколькими базами данных без программирования сложного взаимодействия и создания внутреннего обмена сообщениями. Это
сокращает разработку и проверочную работу, потому что компонент Компонент Service Broker обеспечивает взаимодействие в
контексте диалога.Кроме того, это повышает производительность. Например, сервер, обслуживающий клиентские запросы базы
данных, поддерживающие веб-сайты, может записывать информацию и отправлять ресурсоемкие задачи в очереди серверных баз
данных. Компонент Service Broker гарантирует, что управление всеми задачами ведется в контексте транзакций, чтобы обеспечить
надежность и техническое единообразие.
57 SQL явл. инструментом, предназнач. для обработки и чтения данных, содержащихся в комп. БД. SQL явл., прежде всего, инф-
нно-логич. языком, предназнач. для описания, изменения и извлечения данных, хранимых в реляционных базах данных. SQL – это
сокращенное названиеструктурированного языка запросов (Structured Query Language). SQL применяется для орг-ции
взаимодействия пользователя с базой данных. На самом деле SQL работает только с БД реляционного типа. Компьютерная
программа, которая управляет базой данных, называется системой управления базой данных, или СУБД. Если пользователю
необх. прочитать данные из БД, он запрашивает их у СУБД с пом. SQL. СУБД обрабатывает запрос, находит требуемые данные и
посылает их пользователю. Процесс запрашивания данных и получения результата называетсязапросом к БД: отсюда и название
– структурированный язык запросов. Несмотря на то, что чтение данных по-прежнему остается одной из наиб. важн. Ф-ций SQL,
сейчас этот язык исп-ся для реализации всех функциональных возможностей, кот. СУБД предоставляет пользователю, а именно:
Организация данных. SQL дает пользователю возможность изменять структуру представления данных, а также устанавливать
отношения между элементами БД.
Чтение данных. SQL дает пользователю или приложению возможность читать из БД содержащиеся в ней данные и пользоваться
ими.
Обработка данных. SQL дает пользователю или приложению возможн. изменять БД, т.е. добавлять в неё новые данные, а также
удалять или обновлять уже имеющиеся в ней данные.
Управление доступом. С пом. SQL можно ограничить возможности пользователя по чтению и изменению данных и защитить их от
несанкционированного доступа.
Совместное использование данных. SQL координирует совместное использование данных пользователями и работающими
параллельно, чтобы они не мешали друг другу.
Целостность данных. SQL позволяет обеспечить целостность БД-ых, защищая ее от разрушения из-за несогласованных изменений
или отказа системы.
58 Операция выборки на языке SQL реализуется оператором Select следующего вида:
Select все атрибуты
From имя отношения
Where условие выборки;
Здесь вместо того, чтобы писать «все атрибуты», можно использовать значок «*». В теории языка структурированных запросов этот
значок означает выбор всех атрибутов из схемы отношения.
Условие выборки здесь (и во всех остальных реализациях операций) записывается в виде логического выражения со стандартными
связками not (не), and (и), or (или). На атрибуты отношения ссылаемся посредством их имен.
Операция проекции на языке структурированных запросов реализуется даже проще, чем операция выборки. Напомним, что при
применении операции проекции выбираются не строки (как при применении операции выборки), а столбцы. Поэтому достаточно
перечислить заголовки нужных столбцов (т. е. имена атрибутов), без указания каких-либо посторонних условий. Итого, получаем
оператор следующего вида:
Select список имен атрибутов
From имя отношения;
После применения этого оператора машина выдаст те столбцы таблицы-отношения, имена которых были указаны в первой строчке
этого оператора Select. Как мы уже упоминали ранее, повторяющиеся строки и столбцы исключать из результирующего отношения
не обязательно. Но если в заказе или в задании требуется обязательно элиминировать дубликаты, следует использовать специальную
опцию языка структурированных запросов – distinct. Эта опция задает автоматическое исключение дубликатов кортежей из
отношения. С применением этой опции оператор Select будет выглядеть следующим образом:
Select distinct список имен атрибутов
From имя отношения;
В языке SQL существует специальное обозначение для необязательных элементов выражений – квадратные скобки [...]. Поэтому в
самом общем виде операция проекции будет выглядеть следующим образом:
Select [distinct] список имен атрибутов
From имя отношения;
Однако если результат применения операции гарантированно не содержит дубликатов или же дубликаты все-таки допустимы, то
опцию distinct лучше не указывать, чтобы не загромождать запись, т. е. из соображений производительности работы оператора. e-
reading.club
59 SQL явл. инструментом, предназнач. для обработки и чтения данных, содержащихся в комп. БД. SQL явл., прежде всего, инф-
нно-логич. языком, предназнач. для описания, изменения и извлечения данных, хранимых в реляционных базах данных. SQL – это
сокращенное названиеструктурированного языка запросов (Structured Query Language). SQL применяется для орг-ции
взаимодействия пользователя с базой данных. На самом деле SQL работает только с БД реляционного типа. Компьютерная
программа, которая управляет базой данных, называется системой управления базой данных, или СУБД.
Внутреннее соединение — это один из них, в котором Access включает только данные из таблицы, если есть соответствующие данные
в связанной таблице, и наоборот. В большинстве случаев вы будете использовать внутреннее соединение. Если вы создаете
соединение и не указали тип соединения, то Access считает, что вы хотите использовать внутреннее соединение. Внутренние
соединения удобны, так как они позволяют объединять данные из двух источников на основе общих значений,
60 SQL явл. инструментом, предназнач. для обработки и чтения данных, содержащихся в комп. БД. SQL явл., прежде всего, инф-
нно-логич. языком, предназнач. для описания, изменения и извлечения данных, хранимых в реляционных базах данных. SQL – это
сокращенное названиеструктурированного языка запросов (Structured Query Language). SQL применяется для орг-ции
взаимодействия пользователя с базой данных. На самом деле SQL работает только с БД реляционного типа. Компьютерная
программа, которая управляет базой данных, называется системой управления базой данных, или СУБД.
61 SQL явл. инструментом, предназнач. для обработки и чтения данных, содержащихся в комп. БД. SQL явл., прежде всего, инф-
нно-логич. языком, предназнач. для описания, изменения и извлечения данных, хранимых в реляционных базах данных. SQL – это
сокращенное названиеструктурированного языка запросов (Structured Query Language). SQL применяется для орг-ции
взаимодействия пользователя с базой данных. На самом деле SQL работает только с БД реляционного типа. Компьютерная
программа, которая управляет базой данных, называется системой управления базой данных, или СУБД.

Итоговые функции еще называют статистическими, агрегатными или суммирующими. Эти функции обрабатывают набор строк для
подсчета и возвращения одного значения. Таких функций всего пять:
 AVG() Функция возвращает среднее значение столбца.

 COUNT() Функция возвращает число строк в столбце.

 MAX() Функция возвращает самое большое значение в столбце.

 MIN() Функция возвращает самое маленькое значение в столбце.

 SUM() Функция возвращает сумму значений столбца.

Описание примера
1Сначала надо из таблицы Поставки (incoming) выбрать идентификаторы (id_incoming) тех поставок, которые осуществлялись
поставщиком "Дом печати
2 Теперь из таблицы Журнал поставок (magazine_incoming) надо выбрать товары (id_product) и их количества (quantity), которые
осуществлялись в найденных в пункте 1 поставках.
3 теперь нам надо добавить в результирующую таблицу цены на найденные товары, которые хранятся в таблице Цены (prices). То
есть нам понадобится объединение таблиц Журнал поставок (magazine_incoming) и Цены (prices) по столбцу id_product:
4 В получившейся таблице явно не хватает столбца Сумма, то есть вычисляемого столбца. Возможность создания таких столбцов
предусмотрена в MySQL. Для этого надо лишь указать в запросе имя вычисляемого столбца и что он должен вычислять. В нашем
примере такой столбец будет называться summa, а вычислять он будет произведение столбцов quantity и price. Название нового
столбца отделяется словом AS:
5 Отлично, нам осталось лишь просуммировать столбец summa и наконец-то узнаем, на какую сумму нам привез товар поставщик
"Дом печати". Синтаксис для использования функции SUM() следущий:
62 SQL явл. инструментом, предназнач. для обработки и чтения данных, содержащихся в комп. БД. SQL явл., прежде всего, инф-
нно-логич. языком, предназнач. для описания, изменения и извлечения данных, хранимых в реляционных базах данных. SQL – это
сокращенное названиеструктурированного языка запросов (Structured Query Language). SQL применяется для орг-ции
взаимодействия пользователя с базой данных. На самом деле SQL работает только с БД реляционного типа. Компьютерная
программа, которая управляет базой данных, называется системой управления базой данных, или СУБД.

В общем случае для создания вычисляемого (производного) поля в списке SELECT следует указать некоторое выражение языка SQL.
В этих выражениях применяются арифметические операции сложения, вычитания, умножения и деления, а также встроенные
функции языка SQL. Можно указать имя любого столбца (поля) таблицы или запроса, но использовать имя столбца только той
таблицы или запроса, которые указаны в списке предложения FROM соответствующей инструкции.
Функция COUNT() возвращает количество записей в таблице, соответствующих заданному критерию.
Функция COUNT(expr) всегда считает только те строки, у которых результатом выражения expr является NOT NULL.
Исключением из этого правила является использование функции COUNT() со звездочкой в качестве аргумента — COUNT(*). В этом
случае считаются все строки, вне зависимости от того, NULL они или NOT NULL.
Указав определенный столбец таблицы в виде параметра, функция COUNT(column_name) возвращает количество записей этого
столбца, которые не содержат значение NULL. Записи со значениями NULLигнорируются.
Использовать функцию mysql_num_rows() нельзя, потому что для того, чтобы узнать общее количество записей, нужно выполнить
запрос SELECT * FROM db, то есть получить все записи, а это нежелательно, поэтому предпочтительнее использовать
функцию count.
63 SQL явл. инструментом, предназнач. для обработки и чтения данных, содержащихся в комп. БД. SQL явл., прежде всего, инф-
нно-логич. языком, предназнач. для описания, изменения и извлечения данных, хранимых в реляционных базах данных. SQL – это
сокращенное названиеструктурированного языка запросов (Structured Query Language). SQL применяется для орг-ции
взаимодействия пользователя с базой данных. На самом деле SQL работает только с БД реляционного типа. Компьютерная
программа, которая управляет базой данных, называется системой управления базой данных, или СУБД.

подчиненным запросом (запросом в запросе) называется инструкция SQL SELECT, расположенная внутри другого запроса на
выборку или запроса на изменение. Допускается использование подчиненных запросов в выражениях, введенных в ячейку поля
(столбца) в режиме конструктора запросов, или при определении условия отбора для поля. Результат внедренной
инструкции SELECT становится частью условий отбора либо частью определения поля в главном запросе. Например, в следующем
запросе с помощью подчиненного запроса отбираются все поставщики из России, а затем результаты используются в
предложении WHERE для поиска всех товаров для каждого из выбранных поставщиков:
WHERE КодПоставщика
IN (SELECT КодПоставщика
FROM Поставщики
WHERE (Страна = "Россия"))
Использование подчиненных запросов значительно замедляет работу основного запроса и, кроме того, ведет к неоправданному
увеличению файла базы данных, поэтому применение их крайне нежелательно. Зачастую подчиненные запросы можно заменить
правильно организованными связями между таблицами.

64 SQL явл. инструментом, предназнач. для обработки и чтения данных, содержащихся в комп. БД. SQL явл., прежде всего, инф-
нно-логич. языком, предназнач. для описания, изменения и извлечения данных, хранимых в реляционных базах данных. SQL – это
сокращенное названиеструктурированного языка запросов (Structured Query Language). SQL применяется для орг-ции
взаимодействия пользователя с базой данных. На самом деле SQL работает только с БД реляционного типа. Компьютерная
программа, которая управляет базой данных, называется системой управления базой данных, или СУБД.
73 SQL явл. инструментом, предназнач. для обработки и чтения данных, содержащихся в комп. БД. SQL явл., прежде всего, инф-
нно-логич. языком, предназнач. для описания, изменения и извлечения данных, хранимых в реляционных базах данных. SQL – это
сокращенное названиеструктурированного языка запросов (Structured Query Language). SQL применяется для орг-ции
взаимодействия пользователя с базой данных. На самом деле SQL работает только с БД реляционного типа. Компьютерная
программа, которая управляет базой данных, называется системой управления базой данных, или СУБД.

Блокировки на уровне строк улучшают согласованность данных, но в то же время эти блокировки плохо сказываются на всей системе
в целом. Давайте подумаем, в каких случаях может потребоваться монопольный доступ к таблице? Например, когда мы хотим
изменить метаданные таблицы или создать новый индекс. Если у нас установлены блокировки только на уровне строк, тогда каждая
сессия будет сканировать таблицу в поисках установленных блокировок для каждой строки, а также устанавливать свои блокировки,
чтобы предотвратить изменения уже просканированных строк. Как вы уже поняли, это было бы неэффективно с точки зрения
операций ввода-вывода и памяти, особенно на больших таблицах. Для этого в SQL Server введено такое понятие, как блокировка с
намерением (I*). SQL Server использует их, чтобы показать, что есть блокировки на более низком уровне.
Блокировки столбцов
Как вы знаете, самой маленькой единицей блокировки в SQL Server 2000 является блокировка строки. Блокировка столбцов
недоступна напрямую в SQL Server. Я покажу вам, как можно использовать блокировку индекса для имитации блокировки уровня
столбца.
Блокировки столбцов часто считаются слишком медленными для практического использования, и SQL Server не является
исключением. Но т.к. блокировка строки не означает автоматически, что индекс таблицы заблокирован, то вы всегда можете
использовать данные страниц индекса, чтобы работать с заблокированными данными. Опять же, я объясню это, используя таблицу
Region базы данных Northwind.
Таблица Region - это таблица-куча с двумя столбцами, RegionDescription и RegionId. Уникальный некластерный индекс существует
на столбце RegionId.
Флаги трассировки блокировок
Существует несколько флагов трассировки блокировок, которые помогут настроить ваши блокировки и обнаружить проблемы с
мертвыми блокировками.
Флаги трассировки используются, чтобы включать или выключать определенное поведение в SQL Server. Вы можете установить
флаг трассировки, используя DBCC TRACEON, и если вы хотите, чтобы флаг трассировки включался при каждом запуске SQL
Server, то вы можете определить его как стартовый параметр, используя '-T'.