база данныэ экзамен
база данныэ экзамен
база данныэ экзамен
целостность, е
динство. Потребность в использовании термина «система» возникает в тех случаях, когда нужно подчеркнуть, что что-то является
большим, сложным, не полностью сразу понятным, при этом целым, единым. В отличие от понятий «множество», «совокупность»
понятие системы подчёркивает упорядоченность, целостность, наличие закономерностей построения, функционирования и
развития[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.
Проекция
Проекция является операцией, при которой из отношения выделяются атрибуты только из указанных доменов, то есть из таблицы
выбираются только нужные столбцы, при этом, если получится несколько одинаковых кортежей, то в результирующем отношении
остается только по одному экземпляру подобного кортежа.
Умножение
Умножение или декартово произведение является операцией, производимой над двумя отношениями, в результате которой мы
получаем отношение со всеми доменами из двух начальных отношений. Кортежи в этих доменах будут представлять из себя все
Выборка
Выборка — это операция, которая выделяет множество строк в таблице, удовлетворяющих заданным условиям. Условием может
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-версия.
Итоговые функции еще называют статистическими, агрегатными или суммирующими. Эти функции обрабатывают набор строк для
подсчета и возвращения одного значения. Таких функций всего пять:
AVG() Функция возвращает среднее значение столбца.
Описание примера
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'.