Ћекции.ќрг


ѕоиск:




 атегории:

јстрономи€
Ѕиологи€
√еографи€
ƒругие €зыки
»нтернет
»нформатика
»стори€
 ультура
Ћитература
Ћогика
ћатематика
ћедицина
ћеханика
ќхрана труда
ѕедагогика
ѕолитика
ѕраво
ѕсихологи€
–елиги€
–иторика
—оциологи€
—порт
—троительство
“ехнологи€
“ранспорт
‘изика
‘илософи€
‘инансы
’ими€
Ёкологи€
Ёкономика
Ёлектроника

 

 

 

 


Ѕезопасность и объекты баз данных




 

Ѕазы данных хран€тс€ на компьютере в виде файлов. ќднако работа с ними отличаетс€ от обычных файлов других типов, создаваемых прочими приложени€ми. Ёто отличие заключаетс€ в повышенных требовани€х обеспечени€ безопасности хранимой в базах информации.

ѕри работе с обычными приложени€ми мы даЄм команду —охранить перед закрытием изменЄнного файла, полага€сь в выполнении файловых операций на операционную систему. ≈сли мы не сохраним файл, то вс€ работа по редактированию или созданию файла пропадЄт.

Ѕазы данных Ц это особые структуры. »нформаци€, котора€ в них содержитс€, имеет большую, часто общественную ценность (учЄт автомобилей в √»Ѕƒƒ, обслуживание счетов в банках, обработка результатов ≈√ЁЕ). Ќередко с одной и той же базой работают тыс€чи пользователей по всей стране. ќт информации, еЄ актуальности и сохранности, может зависеть благополучие множества людей. ѕоэтому целостность содержимого базы не должна зависеть ни от оператора, который может забыть сохранить введЄнные данные, ни от перебоев в электропитании.

ѕроблема безопасности решаетс€ тем, что в —”Ѕƒ дл€ сохранени€ данных используетс€ двойной подход. — одной стороны, изменение структуры базы, добавление или удаление таблиц и другие, так сказать, глобальные операции происход€т с сохранением файла базы данных. ќ таких операци€х —”Ѕƒ предупреждает пользовател€ (разработчика), их не провод€т с базой, наход€щейс€ в эксплуатации.  роме того, что пользователи не могут измен€ть структуру базы, безопасность обеспечиваетс€ ещЄ и тем, что отдельным пользовател€м предоставл€ютс€ только те данные и соответствующие права доступа, которые предусмотрены на конкретном рабочем месте.

— другой стороны, операции по наполнению и редактированию содержимого базы, не затрагивающие еЄ структуру, максимально автоматизированы, выполн€ютс€ без предупреждени€, в обход операционной системы. ≈сли мы добавим или удалим записи, отредактируем хот€ бы одно поле, то все изменени€ тут же сохран€тс€ на диске. ѕоэтому нельз€ ставить учебные эксперименты на реально эксплуатируемых базах Ц только на специальных учебных базах или копи€х.

 ажда€ —”Ѕƒ реализует свои типы объектов. ѕеречислим основные типы объектов, которые используютс€ в Ѕƒ на примере MS Access.

“аблицы Ц основные объекты любой рел€ционной Ѕƒ. ¬ таблицах хранитс€ как структура базы (пол€, их типы и свойства), так и все данные (записи).

«апросы Ц объекты, предназначенные дл€ доступа к нужным данным из одной или нескольких таблиц. –езультат выполнени€ запроса также представл€етс€ в табличной форме. ќсобенность запросов на выборку состоит в том, что из нужных полей и записей базовых таблиц в оперативной пам€ти создаЄтс€ временна€ результирующа€ таблица, которую ещЄ называют моментальным снимком. ќсновное назначение запросов Ц обеспечение удобства и безопасности.

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

—оображени€ безопасности состо€т в том, что чем меньше доступа к базовым таблицам имеют пользователи, тем лучше. «апросы составл€ютс€ так, что из всех возможных данных пользователю предоставл€етс€ только необходимый минимум. ¬о-первых, снижаетс€ риск того, что данные в таблицах будут повреждены в результате неумелых или ошибочных действий пользователей. ¬о-вторых, предоставив разным пользовател€м разные запросы, можно эффективно разграничить их доступ к данным в строгом соответствии с кругом персональных об€занностей. Ќапример, сотрудник отдела кадров может вести таблицы преподавателей, сотрудник деканата Ц соответствующих групп студентов, а преподаватель Ц ведомости по своим дисциплинам. ѕри этом сотрудник отдела кадров не может выставл€ть в ведомости оценки, а преподаватель Ц измен€ть список группы.

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

‘ормы Ц объекты, предназначенные дл€ удобного и безопасного (аналогично запросам) ввода данных. ¬ отличие от запросов, представл€ющих данные в виде таблиц, формы представл€ют собой окна с размещенными на них пол€ми данных и элементами управлени€ (кнопки, надписи, счетчики и прочие).   формам примен€ютс€ специальные средства оформлени€, нагл€дно отображающие существующие данные и облегчающие ввод новых. ѕреимущества форм можно представить, если ввод данных осуществл€етс€ с заполненных бумажных бланков. ¬ этом случае графическое представление экранной формы повтор€ет оформление бланка Ц это заметно упрощает работу наборщика, снижает его утомление и уменьшает количество ошибок, пропущенных и неверно заполненных полей.

ќтчеты Ц объекты, предназначенные только дл€ вывода данных. ќтчеты позвол€ют на основе таблиц и запросов сформировать нагл€дные документы, которые могут быть распечатаны или включены в документ другого приложени€. ¬ отчетах могут быть не только отфильтрованные и отсортированные, но и сгруппированные данные. ƒобавл€ютс€ специальные элементы оформлени€, характерные дл€ печатных документов: колонтитулы, номера страниц, врем€ создани€ отчЄта и т.п.

ћакросы и модули Ц объекты, предназначенные дл€ автоматизации работы с базой. ћакросы состо€т из последовательности внутренних команд —”Ѕƒ и предназначены дл€ автоматизации повтор€ющихс€ операций. ћодули создаютс€ путЄм программировани€ на €зыке Visual Basic for Applications и предназначены дл€ создани€ новых функций, реализации нестандартных возможностей, позвол€ющих удовлетворить специфические требовани€ заказчика, повысить быстродействие системы управлени€ и уровень еЄ защищЄнности.

 

15.7 ѕроектирование баз данных *

 

ѕроектирование Ѕƒ представл€ет собой длительный, трудоЄмкий, слабо формализованный процесс, от которого зависит жизнеспособность и эффективность проектируемой базы, еЄ способность к развитию. ѕроектирование Ѕƒ выполн€етс€, как правило, коллективом разработчиков и включает следующие этапы:

Х анализ предметной области;

Х проектирование и кодирование;

Х тестирование и сопровождение.

јнализ предметной области необходим дл€ составлени€ технического задани€ на разработку базы данных. ѕоскольку заказчик не всегда обладает необходимой квалификацией, то этот этап обычно выполн€етс€ разработчиком совместно с заказчиком. ѕредметна€ область включает в себ€ описание информационных объектов, их свойств, взаимосв€зей, а также пожелани€ заказчика. ѕри этом важно не ограничиватьс€ взаимодействием с головным подразделением, а провести обсуждение с возможными пользовател€ми, со всеми службами, которые могут оказатьс€ поставщиками данных в базу и их потребител€ми. ¬ техническом задании более строго указываетс€ список исходных и выходных данных, оговариваетс€ интерфейс, определ€ющий переход от представлени€ данных в Ѕƒ к представлению, прин€тому среди пользователей, и обратно. ¬ общем случае пользователи представл€ют данные в виде документов различных видов, от произвольных текстов до справок и таблиц фиксированного формата.

ѕроектирование баз данных осуществл€етс€ на двух уровн€х Ц физическом и логическом. Ќа физическом уровне решаютс€ вопросы размещени€ данных на внешних носител€х. ¬о многом эта работа выполн€етс€ —”Ѕƒ автоматически без участи€ разработчика. Ќа логическом уровне создаЄтс€ структура базы, начина€ с построени€ модели данных предметной области (инфологической, то есть информационно-логической модели) и заканчива€ схемой данных (описанием таблиц и св€зей между ними).

–азработка структуры основных таблиц начинаетс€ с составлени€ генерального списка полей, который может насчитывать сотни позиций. ƒл€ каждого пол€ определ€етс€ подход€щий тип данных. ѕол€ генерального списка распредел€ютс€ по базовым таблицам. ƒальнейшее рассмотрение информационной структуры приводит к разбиению основных таблиц на более мелкие с целью устранени€ повтор€ющихс€ данных в запис€х Ц нормализации, что уменьшает объем пам€ти, занимаемый базой данных на диске, и обеспечивает непротиворечивость данных в Ѕƒ. ѕроцесс нормализации носит итерационный (пошаговый) характер, осуществл€етс€ методом нормальных форм. —уть метода состоит в последовательном переводе таблицы из одной нормальной формы в другую, причем кажда€ последующа€ устран€ет определенный вид функциональной зависимости между пол€ми таблицы. ¬сего в теории описаны шесть нормальных форм, на практике чаще всего примен€ютс€ первые три.

ѕерва€ нормальна€ форма. ќтношение называетс€ приведенным к первой нормальной форме, если все его атрибуты неделимы. Ќапример, отношение, содержащее поле ‘»ќ, не приведено к первой нормальной форме, если в запросах Ѕƒ требуетс€ выделить отдельно фамилию или им€. –азработчики Ѕƒ изначально стро€т исходные отношени€ так, чтобы они были в первой нормальной форме.

¬тора€ нормальна€ форма. ƒл€ приведени€ отношений ко второй нормальной форме введем пон€тие функциональной зависимости. ‘ункциональна€ зависимость полей Ч это зависимость, при которой в строке определенному значению ключевого пол€ соответствует только одно значение не ключевого пол€. ¬ случае составного ключа вводитс€ пон€тие функционально полной зависимости. ѕри функционально полной зависимости не ключевое поле зависит от составного ключа, но не зависит от любого пол€, вход€щего в составной ключ. Ќапример, в отношении —“”ƒ≈Ќ“ (‘јћ»Ћ»я, »ћя, ќ“„≈—“¬ќ, ‘ј ”Ћ№“≈“,  ”–—, √–”ѕѕј) первичным ключом €вл€етс€ совокупность полей ‘јћ»Ћ»я + »ћя + ќ“„≈—“¬ќ. ѕол€ ‘ј ”Ћ№“≈“,  ”–—, √–”ѕѕј функционально полно завис€т от составного ключа.

ќтношение находитс€ во второй нормальной форме, если оно находитс€ в первой нормальной форме, и каждое не ключевое поле функционально полно зависит от составного ключа. Ќапример, в отношении ”—ѕ≈¬ј≈ћќ—“№ (Ќќћ≈– «ј„≈“ », ‘јћ»Ћ»я, ƒ»—÷»ѕЋ»Ќј, ќ÷≈Ќ ј) составным ключом €вл€етс€ совокупность Ќќћ≈– «ј„≈“ » + ƒ»—÷»ѕЋ»Ќј. Ёто отношение находитс€ в первой нормальной форме, но оно не находитс€ во второй нормальной форме, так как поле ‘јћ»Ћ»я не имеет полной функциональной зависимости от составного ключа. ƒл€ перевода этого отношени€ во вторую нормальную форму необходимо исключить из него поле ‘јћ»Ћ»я, так как оно функционально зависит от Ќќћ≈–ј «ј„≈“ ». “.е. исходное отношение необходимо разбить на два св€занных отношени€ ”—ѕ≈¬ј≈ћќ—“№ (Ќќћ≈– «ј„≈“ », ƒ»—÷»ѕЋ»Ќј, ќ÷≈Ќ ј) и —ѕ»—ќ  (Ќќћ≈– «ј„≈“ », ‘јћ»Ћ»я). —в€зь здесь осуществл€етс€ по полю Ќќћ≈– «ј„≈“ ».

“реть€ нормальна€ форма позвол€ет устранить транзитивную зависимость. “ранзитивна€ зависимость существует в том случае, если одно из двух описательных полей зависит от ключа, а второе зависит от первого. ќтношение находитс€ в третьей нормальной форме, если оно находитс€ во второй нормальной форме, и каждое не ключевое поле не транзитивно зависит от ключа.

Ќапример, в отношении —“”ƒ≈Ќ“ (‘јћ»Ћ»я, ‘ј ”Ћ№“≈“, Ќј«¬јЌ»≈ вуза, јƒ–≈—) поле јƒ–≈— транзитивно (через поле Ќј«¬јЌ»≈ вуза) зависит от ключа ‘јћ»Ћ»я. ѕри заполнении экземпл€рами такого отношени€ поле јдрес будет многократно повтор€тьс€. ƒл€ устранени€ транзитивной зависимости в классе используетс€ Ђрасщеплениеї отношени€ на несколько новых. Ќапример, отношение —“”ƒ≈Ќ“ расщепл€етс€ на два: —“”ƒ≈Ќ“ (‘јћ»Ћ»я, ‘ј ”Ћ№“≈“, Ќј«¬јЌ»≈ вуза) и ¬”« (Ќј«¬јЌ»≈ вуза, јƒ–≈—), св€зь по полю Ќј«¬јЌ»≈ вуза.

ѕроцесс нормализации заканчиваетс€ созданием схемы данных, в которой указываютс€ все нормализованные таблицы с их пол€ми и взаимосв€з€ми между ними. ƒальнейша€ работа над проектом Ц кодирование Ц св€зана с реализацией базы в среде конкретной —”Ѕƒ, выбираемой с учЄтом требований заказчика и намеченной архитектуры »—. Ќапример, применительно к —”Ѕƒ MS Access, задаетс€ формат файла базы данных, создаютс€ таблицы и другие объекты Ѕƒ. Access обладает ручными (режим  онструктора) и автоматизированными (с помощью ћастеров) средствами создани€ объектов. јвтоматизированные средства более нагл€дные и производительные. –учные Ц более трудоЄмкие, требуют дополнительных знаний об инструментах и возможност€х —”Ѕƒ, но и более гибкие.

“естирование должен проходить любой программный продукт, тем более такой, как Ѕƒ. ѕри тестировании с использованием реальных данных обнаруживаютс€ возможные ошибки, собираютс€ статистические данные дл€ определени€ показателей качества и надЄжности созданного программного обеспечени€.

—опровождение €вл€етс€ самым продолжительным этапом жизненного цикла любой Ѕƒ. ќсновные действи€ на этом этапе свод€тс€ к наблюдению за созданной системой и поддержке еЄ нормального функционировани€.

 

¬опросы и тестовые задани€ дл€ самоконтрол€

1  омплекс программ, реализующих функции ведени€ данных и визуализации информации в удобной дл€ пользовател€ форме

1) база данных

2) система управлени€ базой данных

3) информационна€ система

2 јппаратно-программный комплекс, обеспечивающий выполнение функций обработки и визуализации информации

1) база данных

2) система управлени€ базой данных

3) информационна€ система

3 —овокупность структурированных данных, относ€щихс€ к одной предметной области

1) база данных

2) система управлени€ базой данных

3) информационна€ система

4 ќрганизованна€ структура, предназначенна€ дл€ хранени€ информации

1) база данных

2) система управлени€ базой данных

3) информационна€ система

5 “ермин, объедин€ющий действи€ по добавлению, удалению или изменению хранимых данных

1) ведение данных

2) визуализаци€ данных

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

4) транзакци€

6 ќтбор отображаемых данных в соответствии с заданным критерием, упор€дочение, оформление и последующа€ выдача на устройство вывода

1) ведение данных

2) визуализаци€ данных

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

4) транзакци€

7  аковы основные функциональные возможности —”Ѕƒ?

8 „ем характеризуетс€ рел€ционна€ модель данных?

9 ѕеречислите основные типы объектов, которые используютс€ в Ѕƒ на примере MS Access.

10 ѕеречислите основные свойства полей Ѕƒ на примере —”Ѕƒ Microsoft Access:

11 ƒайте пон€тие ключа.

12 ƒанные каких типов могут хранитьс€ в пол€х базы данных.

13  акие виды св€зей между объектами ¬ам известны?

14  акие команды выполнени€ типовых операций среде —”Ѕƒ вы знаете.

15 Ќазовите основные этапы технологического процесса обработки информации с использованием —”Ѕƒ.

 

вернутьс€ к содержанию

 

 





ѕоделитьс€ с друзь€ми:


ƒата добавлени€: 2015-01-29; ћы поможем в написании ваших работ!; просмотров: 1817 | Ќарушение авторских прав


ѕоиск на сайте:

Ћучшие изречени€:

Ќеосмысленна€ жизнь не стоит того, чтобы жить. © —ократ
==> читать все изречени€...

298 - | 301 -


© 2015-2023 lektsii.org -  онтакты - ѕоследнее добавление

√ен: 0.02 с.