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

Наименование параметра Значение
Тема статьи: Структурированные типы данных
Рубрика (тематическая категория) Программирование

Данные структурированного типа состоят из данных других типов. Переменные этих типов могут в каждый момент времени иметь только одно значение. К данным структурированного типа относятся:

o Строки;

o Массивы;

o Множества;

o Записи;

o Файлы;

o Классы.

Строки (строковые типы) : представлены тремя физическими и одним общим типами.

Данные типа ShortString представляют из себястроку, которая фактически является массивом из 256 элементов – array . Нулевой байт этого массива указывает длину строки. Строка - ϶ᴛᴏ последовательность символов кодовой таблицы.

Данные типов AnsiString и Wide String представляют из себядинамичсекие массивы, максимальная длина которых фактически ограничена размером основной памяти компьютера. Данные типа AnsiString м кодируются в коде ANSI , а типа Wide String – в коде Unicode .

Общим является тип String , который может соответствовать типу ShortString илиAnsiString , что определяется директивой компилятора $H .

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

Формат описания строкового типа:

Type <имя типа> = string [ max длина строки];

Иначе: var <имя переменной, ... >: string [ max длина строки];

В случае если значение максимально допустимой длины строки не указано, по умолчанию длина 255 символов. При использовании в выражениях строка состоит в апострофы. Строковые данные можно использовать в качестве констант. Недопустимо использование строковых переменных в качестве селœектора в операторе Case .

Пример: const Adres = ’ul. Korolenco, 5’;

type Stroka = string;

var Str: Stroka; St1: string; St2, St3: string;

Массивы : массив - ϶ᴛᴏ упорядоченная индексированная совокупность однотипных элементов, имеющих общее имя. Элементами массивов бывают данные любого типа, включая структурные. Каждый элемент массива однозначно определяется именем массива и индексом (номером этого элемента в массиве) или индексами, в случае если массив многомерный. Для обращения к отдельному элементу массива указывают имя этого массива и номер (номера) элемента͵ заключенный в квадратные скобки, к примеру, arr1 или arr2.

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

Различают массивы статические и динамические . Статический массив представляет собой массив, границы индексов и, соответственно, размеры которого задаются при объявлении, ᴛ.ᴇ. они известны до компиляции программы. Формат описания типа статического массива:

Type <имя типа> = Аггау [<тип индексов>] of <тип элементов >;

Иначе: var <имя переменной, ...>: Аггау [<тип индексов>] of <тип элементов >;

Пример.
Размещено на реф.рф
type Matrix = a ггау of integer;

Znak = array of char;

Day =(Mon, Tue, Wed, Thu, Fri, Sat, Sun);

var m1, m2: Matrix; a: Znak;

Week: array of Day; r: array of real;

Динамический массив представляет собой массив, для которого при объявлении указывается только тип его элементов, а размер массива определяете при выполнении программы. Формат описания типа динамического массива:

Type <имя типа> = Аггау of <тип элементов >;

Задание размера динамического массива во время выполнения программы производится процедурой SetLength (var S; NewLength:integer ), которая для динамического массива S устанавливает новый размер, равный NewLength . Выполнять операции с динамическим массивом и его элементами можно только после задания размеров этого массива.

После задания размера динамического массива для определœения его длины, минимального и максимального номеров элементов используются функции Length(), Low() и High() соответственно. Нумерация элементов динамиче­ского массива начинается с нуля, в связи с этим функция Low() для него всœегда возвращает значение ноль.

Пример.
Размещено на реф.рф
Var n: integer;

m: array of real;

SetLength(m, 100);

for n:=0 to 99 do m[n]:=n;

SetLength (m , 200);

После описания динамического массива, состоящего из вещественных чи­сел, определяется размер этого массива, равный 100 элементам. Каждому элементу присваивается значение, равное его номеру в массиве. Так как ну­мерация элементов массива начинается с нуля, то номер последнего из них равен не 100, а 99. После цикла размер массива увеличивается до двухсот.

Для описания типа многомерного динамического массива (к примеру, дву­мерного) используется конструкция:

Type <имя типа> = Аггау of Аггау of <тип элементов >;

Действия над массивом обычно выполняются поэлементно, в т.ч. операции ввода и вывода. Поэлементная обработка массивов производится, как правило, с использованием циклов. Массив в целом (как единый объ­ект) может участвовать только в операциях отношения и в операторе при­сваивания, при этом массивы должны быть полностью идентичными по структуре, то есть иметь индексы одинаковых типов и элементы одинаковых типов.

Множества: множество представляет собой совокупность элементов, выбранных из пред­определœенного набора значений. Все элементы множества имеют порядко­вый тип; количество элементов множества не может превышать 256. Формат, описания множественного типа:

Type <имя типа> = Set of <тип элементов >;

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

Вместе с тем, имеется операция in (проверка членства), которая определяет принадлежность выражения порядкового типа (первого операнда) множест­ву (второму операнду). Результат операции будет типа boolean и иметь зна­чение True в случае соблюдения принадлежности значения множеству.

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

Type <имя типа> = record ;

<имя поля­_1>: <Тип поля>;

<имя поля_ n >: <Тип поля>;

Вариантная запись , так же как и фиксированная, имеет конечное число по­лей, однако предоставляет возможность по-разному интерпретировать об­ласти памяти, занимаемые полями. Все варианты записи располагаются в одном месте памяти и позволяют обращаться к ним по различным именам. Отметим, что термин ʼʼвариантная записьʼʼ не имеет ничего общего с терми­ном ʼʼвариантный типʼʼ (variant ). Формат объявления вариантной записи:

Type <имя типа> = record ;

Case <Признак>: <Тип признака> of ;

<вариант_1>: (<описание варианта_1>)

<вариант_ n >: (<описание варианта_ n >);

Для обращения к конкретному полю крайне важно указывать имя записи и имя поля, разделœенные точкой. Τᴀᴋᴎᴍ ᴏϬᴩᴀᴈᴏᴍ, имя поля является состав­ным. С полем можно выполнять те же операции, что и с переменной этого типа.

Пример.
Размещено на реф.рф
var Man: record;

Man.Name:=’Ivanov M.A.’;

Man .Salary:=5000;

Переменная Man - фиксированная запись, которая содержит поля имени (Name), оклада (Salary) и примечания (Note), причем каждое поле имеет свой тип.

Файлы : Файл представляет собой имеющую имя последовательность однотипных элементов, размещенных на внешнем устройстве, чаще всœего, на диске. Файл имеет много общего с одномерным динамическим массивом, но размещает­ся не в оперативной, а во внешней памяти, и не требует предварительного указания размера.

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

Учитывая зависимость оттипа элементов различают текстовые, типизированные и нетипизированные файлы . Текстовый файл содержит строки символов пе­ременной длины, типизированный файл составляют элементы указанного типа (кроме файлового), внетипизированном файле находятся элементы, тип которых не указан. Описание файловой переменной, предназначенной для работы с файлом, должно соответствовать типу элементов файла.

Пример.
Размещено на реф.рф
var f1: TextFile;

f2: File of integer;

f3: File of real;

здесь переменная f1 предназначена для работы с тек­стовыми файлами, переменные f2 и f3 – с типизированными файлами, со­держащими целые и вещественные числа, соответственно, а переменная f4 – с нетипизированными файлами.

Структурированные типы данных - понятие и виды. Классификация и особенности категории "Структурированные типы данных" 2017, 2018.

Cтраница 1


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

Семантика переменных в языке PILOT / 2.  

Обработка сложно структурированных данных во внешней памяти является отличительным свойством всех ЯПЗ. Но помимо этого нужны и обычные переменные. Вот почему в ЯПЗ PILOT / 2 введены регистры и стеки.  

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

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

Знания - это хорошо структурированные данные, или данные о данных, или метаданные.  

В представлении посредством термов структурированные данные образуются при помощи функциональных символов, позволяющих собирать составляющие их части в группы. Так, например, список (10 20 30) можно было бы представить термом 10.20.30. NIL, в котором каждый функтор точка группирует элемент, расположенный слева от него, со стоящим справа хвостовым фрагментом списка. И константы, и структурированные термы можно рассматривать как по существу пассивные объекты, предназначенные для обработки процедурами.  

На класс программ обработки структурированных данных ориентирована АЛТОП-технология, созданная на основе работ по программному обеспечению АСУ. Эта разработка включает оригинальные средства составления исходных описаний , разбираемые в разделах 2.4 и 2.5, и методику проектирования (см. гл.  

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

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

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

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

В основу ЯЗ положены неоператорные средства описания иерархически структурированных данных. Оно однозначно определяет траекторию движения и доступа в БД. Кроме того, в ЯЗ имеются средства, аналогичные процедурным языкам программирования.  

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

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

Тема 4.7

Программирование алгоритмов
формирования и обработки
одномерных массивов

Структурированные данные

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

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

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

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

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

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

4.7.2. Средства описания и работы с одномерными
массивами данных

Массив – последовательность переменных одинакового типа, объединенных общим именем . Например: одномерный массив а(9) состоит из 10 элементов с общим именем а: a(0), a(1), a(2), a(3),..., a(9), упорядоченных по индексу i, который принимает значения от 0 до 9:

a(i)
i

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

При объявлении массива оператор объявления должен включать следующую информацию:

· имя массива – имя (идентификатор), которое используется для представления массива в программе;

· тип данных – тип данных, который имеют элементы массива;


· размерность (ранг) – количество измерений объявляемого массива (т.е. количество индексов при объявлении; одномерные массивы имеют одно измерение);

· количество элементов – количество элементов, которые будут содержаться в массиве.

Рассмотрим примеры некоторых описаний массивов:

В этих примерах объявлены следующие массивы:

· одномерный массив d , состоящий из 31 элемента типа Integer с индексами от 0 до 30;

· одномерный массив a, состоящий из 11 элементов типа Double с индексами от 0 до 10;

· двумерный массив b , состоящий из 14х11=151 элемента типа Single с индексами по строкам от 0 до 13 и по столбцам от 0 до 10.

Обратите внимание, что значением нижней границы массива в VB может быть только 0 .

Таким образом, массив состоит из элементов, которые могут быть доступны при помощи индексов . При обращении к элементам массива индексы записываются вслед за именем в круглых скобках и могут представлять собой любое допустимое целочислен­ное выражение. Например, d(24), a(2*i+1).

Обратите внимание, что количество индексов указывает на размерность массива. Так, в приведенном выше примере размерность массива a(10) равна единице. Массив b(2,3) имеет размерность 2.

В отличие от размерности , размер массива – это количество элементов в массиве. В нашем примере размер массива, а(10) равен 11.

Перед использованием массива в программе его необходимо объявить с помощью оператора Dim , а элементам массива присвоить конкретные значения. Оператор Dim выделяет место в памяти компьютера для размещения элементов массива, обнуляет элементы числовых массивов или заполняет элементы строковых массивов пустыми строками ("""").

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

Заполнить элементы массива конкретными значениями можно с помощью ввода значений элементов массива, с помощью оператора присваивания или с помощью инициализации элементов массива.

Инициализация элементов массива – это поэлементное присваивание значения в операторе объявления массива. В этом случае размер массива не указывается в круглых скобках после имени массива, а определяется неявно размером списка значений. Список значений начинается с элемента с индексом 0 и заключается в фигурные скобки , например:

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

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

Эта функция возвращает (определяет) номер последнего элемента массива и позволяет обрабатывать массивы в процедурах, не передавая в них в качестве параметра количество элементов массива. Например,

Кроме того, для определения верхней границы одномерного массива можно использовать методGetUpperBound(). Поскольку массив одномерный, то в скобках следует указывать значение 0. Например:

Кроме того, известно, что ключевое слово ByVal указывает передачу аргумента-массива по значению, а ключевое слово ByRef указывает, что аргумент-массив передается по ссылке. Заметим, что если ключевые слова ByVal или ByRef опущены, то аргумент-массив переда­ется по ссылке.

Таким образом, при описании формальных параметров любой процедуры после ИмяМассива не­обходимо всегда включать пустые круглые скобки, так как они указывают, что этот параметр являет­ся одномерным массивом.

Обратите внимание на то, что после имени массива, который является фактическим параметром, скобки отсутствуют .

Как известно, передача аргументов по значению (с помощью ключевого слова ByVal) приводит к тому, что VB передает копию данных процедуре. Поэтому не следует передавать массивы по значению, если в этом нет особой необходимости.

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

Сегодня мы представляем вам две новинки. Первая – это семь типов структурированных данных в Маркере, которые ранее не поддерживались, а вторая – инструмент под названием «Мастер разметки структурированных данных».

Маркер поддерживает сайты о товарах и компаниях, а также обзоры и многое другое

Маркер был запущен в декабре 2012 года и вышел на российский рынок в ферале 2013 . Это простой инструмент для передачи в Google шаблона структурированных данных, посвященных мероприятиям . Маркер удобен, поскольку не требует изменять код HTML на сайте. Теперь он позволяет разметить и другой контент, посвященный товарам , местным компаниям , приложениям , фильмам , ресторанам и телепередачам .

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

Разметка одной страницы занимает примерно 5 минут, а создание шаблона для множества одинаковых страниц – около 15 минут. Когда все будет готово, вы сможете проверить, распознает ли наша система ваши структурированные данные. Если ошибок не обнаружится, результаты можно будет отправить в Google. Через некоторое время мы повторно просканируем ваш сайт и начнем показывать пользователям дополнительные сведения (например, цены, отзывы и рейтинги) прямо в результатах поиска.

Новинка: Мастер разметки структурированных данных

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

Как и в случае с Маркером, сначала вам необходимо предоставить образец веб-страницы (URL или исходный код HTML) и разметить его с помощью мыши. Когда вы закончите, Мастер сгенерирует код HTML с микроданными. Его можно загрузить и использовать как образец при внедрении структурированных данных на веб-сайт.

Экзамен Информатика

Информация как ресурс. Способы хранения и обработки информации.

Информация от лат. «Information» означает разъяснение, осведомление, изложение.

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

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

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

Хранение информации – это способ распространения информации в пространстве и времени. Способ хранения информации зависит от ее носителя (книга - библиотека, картина - музей, фотография - альбом). ЭВМ предназначена для компактного хранения информации с возможностью быстрого доступа к ней.
Обработка информации – это преобразование информации из одного вида в другой.
Обработка информации – сам процесс перехода от исходных данных к результату и есть процесс обработки. Объект или субъект, осуществляющий обработку - исполнитель обработки.
1-ый тип обработки: обработка, связанная с получением новой информации, нового содержания знаний.
2-ой тип обработки: обработка, связанная с изменением формы, но не изменяющая содержания (например,
перевод текста с одного языка на другой).

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



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

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

Структурирование - это введение соглашений о способах представления данных.

Структурированные данные - это упорядоченные данные.

Неструктурированные данные – это данные, записанные, например, в текстовом файле: Личное дело № 1 Сидоров Олег Иванович, дата рожд. 14.11.92, Личное дело № 2 Петрова Анна Викторовна, дата рожд. 15.03.91.

Чтобы автоматизировать поиск и систематизировать эти данные, необходимо выработать определенные соглашения о способах предоставления данных, т.е. дату рожд. нужно записывать одинаково для каждого студента, она должна иметь одинаковую длину и опред. место среди остальной информации. Эти же замечания справедливы и для остальных данных (№ личного дела, Ф., И., О.) После проведения несложной структуризации с информацией, она будет выглядеть так:

Пример структурированных данных: № Ф. И. О. Дата рожд.

1 Сидоров Олег Иванович 14.11.92

Элементы структурированных данных:

1) А – поле (столбец) – это элементарная неделимая единица организации информации

2) Б – запись (строка) – это совокупность логически связанных полей

3) В – таблица (файл) – это совокупность экземпляров записей одной структуры.

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

В широком смысле слова база данных – это совокупность сведений о конкретных объектах реального мира в какой-либо предметной области.

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

Назначение базы данных:

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

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

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

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

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