Научная статья на тему 'Обеспечение ссылочной целостности данных'

Обеспечение ссылочной целостности данных Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
632
46
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЦЕЛОСТНОСТЬ ПО ССЫЛКАМ / ЦЕЛОСТНОСТЬ СВЯЗЕЙ / ЦЕЛОСТНОСТЬ ВНЕШНИХ КЛЮЧЕЙ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Алексеев Д. М., Кутняк Н. А.

В статье представлено описание одного из видов нарушения целостности данных нарушение целостности ссылочных связей. В рамках исследования рассмотрены различные примеры нарушения ссылочной целостности.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Обеспечение ссылочной целостности данных»

_МЕЖДУНАРОДНЫЙ НАУЧНЫЙ ЖУРНАЛ «ИННОВАЦИОННАЯ НАУКА» №4/2016 ISSN 2410-6070_

3. Фарстов Р.С. Государственное регулирование рекламной деятельности компаний в сети интернет / Р.С.Фарстов // Экономика и предпринимательство. - 2014. - № 8 (49). - С. 868-873.

4. Филатов В.В. Прогнозы и ключевые тенденции глобального рынка IT / В.В.Филатов и др. // Интернет-журнал Науковедение. - 2015. Т. 7. - № 1 (26). - С. 48.

5. Цыпин А.П. Выбор программного обеспечения для построения и анализа рядов динамики / А.П. Цыпин // Особенности транзитивной экономики: Сборник научных статей по материалам Межвузовской конференции молодых ученых. - Оренбург: Издательский центр ОГАУ, 2002. - С.138-140.

6. Цыпин А.П. Информационное обеспечение процесса построения исторических временных рядов социально-экономических показателей России / А.П.Цыпин, А.Г. Ковалев // Интернет-журнал Науковедение. - 2014. - № 6 (25). - С. 50.

7. Шайдуллова А.И. Развитие интернет-экономики / Шайдуллова А.И. // Экономика и социум. - 2015. - № 3-2 (16). - С. 1147-1151.

© Алдушен Е С., 2016

УДК 004.056.2

Д.М. Алексеев

студент 4 курса кафедры БИТ ИТА ЮФУ, г. Таганрог, Российская Федерация Н.А. Кутняк студентка 4 курса кафедры ЛО ИТА ЮФУ, г. Таганрог, Российская Федерация

ОБЕСПЕЧЕНИЕ ССЫЛОЧНОЙ ЦЕЛОСТНОСТИ ДАННЫХ

Аннотация

В статье представлено описание одного из видов нарушения целостности данных - нарушение целостности ссылочных связей. В рамках исследования рассмотрены различные примеры нарушения ссылочной целостности.

Ключевые слова

Целостность по ссылкам, целостность связей, целостность внешних ключей

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

• связи между отношениями описываются в терминах функциональных зависимостей;

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

Требование целостности по ссылкам состоит в том, что для каждого значения внешнего ключа, появляющегося в дочернем отношении, в родительском отношении должен найтись кортеж с таким же значением первичного ключа [1]. Таким образом, внешние ключи не должны ссылаться на отсутствующие в родительском отношении кортежи, - внешние ключи должны быть корректны.

_МЕЖДУНАРОДНЫЙ НАУЧНЫЙ ЖУРНАЛ «ИННОВАЦИОННАЯ НАУКА» №4/2016 ISSN 2410-6070_

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

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

Рассмотрим созданные ранее таблицы Покупателей, Товаров и Покупок, представленные на рис. 1 и рис. 2.

nysql> SELECT * FROM Buyers;

I id I firstnane | secondnane | adress | telephone |

I 1 I Sergey | Ivanov | Gogolevscky 21 | 89081808765 |

2 I Dmitry I Alekseev | Snirnovsky 137 | 89081912660 |

3 I Alexander | Petrov | Svoboda 21 | 89071236754 | I 4 I Dasha I Sldorova | Bolshoi prospekt 32 | 89061238923 |

Рисунок 1 -Содержимое таблицы Покупателей

nysql> SELECT * FROM Tovars;

I tovarlD I tovar | prolzvodltel | kolvo |

| 1 | HASP 2100 | Alladln | 1 |

| 2 | eToken PRO \ Infotex | 2 \

| 3 | ruToken 2345 \ Apple | 4 \

I 4 | Windows 8 I Microsoft \ 1 \

4 rows in set (0,00 sec)

nysql> SELECT * FROM Orders;

I orderlD I buyerlD | tovarlD |

1 I 1 I

2 I 2 I

3 I 3 I

4 I 4 I

1 I

2 I

3 I

4 I

Рисунок 2 - Содержимое таблиц Товары и Покупки

Ссылочная целостность БД в приведенном примере может быть нарушена в четырех случаях, которые выражаются в следующем:

1. Если удалить из таблицы-предка Buyers какую-либо категорию, внешний ключ buyerlD таблицы Orders становится не корректным.

2. Изменение первичного ключа в таблице-предке Buyers. Эта ситуация отличается от ситуации, рассмотренной выше, тем, что категория из каталога не удаляется, а изменяет свой id на новый.

3. Добавление новой записи в таблице-потомке Orders. При этом, аналогичное изменение таблицы-предка Buyers не приведет к нарушению ссылочной целостности, поскольку наличие категории товаров при отсутствии образцов товаров этой категории вполне допустимо.

4. Обновление внешнего ключа в таблице-потомке Orders. Эта ситуация отличается от предыдущей ситуации тем, что buyerlD изменяется и указывает на несуществующего покупателя, например, покупатель с buyerlD, равный 50.

Убедимся в своих предположениях и проверим первый вариант нарушения ссылочной целостности:

МЕЖДУНАРОДНЫЙ НАУЧНЫЙ ЖУРНАЛ «ИННОВАЦИОННАЯ НАУКА» №4/2016 ISSN 2410-6070

mysql? DELETE FROM Buyers WHERE id = 1; Query OK, 0 rows affected (0.00 sec)

mysql> SELECT * FROM Orders WHERE buyerlD = 1; Empty set (0.00 sec)

Рисунок 3 - Проверка нарушения ссылочной целостности

Список использованной литературы:

1. Ограничения целостности [Электронный ресурс] - Режим доступа. - URL: http://www.mstu.edu.ru/study/materials/zelenkov/ch_4_3.html

2. Ограничения целостности для реляционной базы данных [Электронный ресурс] - Режим доступа. - URL: https://sites.google.com/site/gosyvmkss12/bazy-dannyh/26-ogranicenia-celostnosti-dla-relacionnoj-bazy-dannyh

© Алексеев Д.М., Кутняк Н.А., 2016

УДК 004.056.55

Д.М. Алексеев

студент 4 курса кафедры БИТ ИТА ЮФУ, г. Таганрог, Российская Федерация Н.А. Кутняк студентка 4 курса кафедры ЛО ИТА ЮФУ, г. Таганрог, Российская Федерация

ПРОГРАММНАЯ РЕАЛИЗАЦИЯ АЛГОРИТМА ШИФРОВАНИЯ AES

Аннотация

В статье представлено описание одного из алгоритмов шифрования данных - AES. В рамках исследования рассмотрена возможность программной реализации шифра, а также проведена процедура тестирования разработанной программы.

Ключевые слова

Шифрование, криптография, AES, Rijndael

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

Advanced Encryption Standard (AES), также известный как Rijndael, — симметричный алгоритм блочного шифрования (размер блока 128 бит, ключ 128/192/256 бит), принятый в качестве стандарта шифрования правительством США по результатам конкурса AES.

AES-128, AES-192, AES-256 обрабатывают блоки данных за 10, 12 или 14 итераций соответственно. Каждая итерация представляет собой определенную последовательность трансформаций. Все итерации одинаковы за исключением последней, из которой исключено одно из преобразований.

Каждый раунд работает с двумя 128-битными блоками: «Текущий» и «ключ раунда». Все раунды используют разные «ключи раунда», которые получаются с помощью алгоритма расширения ключа. Этот алгоритм не зависит от шифруемых данных и может выполняться независимо от фазы шифрования/дешифрования [2].

На рис. 1 представлена структура алгоритма AES. Наиболее подробно с работой алгоритма AES можно ознакомиться в [1].

i Надоели баннеры? Вы всегда можете отключить рекламу.