Главная » Просмотр файлов » Программирование баз данных MS SQL Server

Программирование баз данных MS SQL Server (1084479), страница 54

Файл №1084479 Программирование баз данных MS SQL Server (Программирование баз данных MS SQL Server) 54 страницаПрограммирование баз данных MS SQL Server (1084479) страница 542018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 54)

Ограничения такого рода будут рассматриваться в контексте описания ограничений РН1МАНУ КЕУ и РМ1ЯРЕ. Ограничения ссылочной целостности Ограничения ссылочной целостности создаются в том случае, если значения в одном столбце должны согласовываться со значениями в другом столбце (либо в той же таблице, либо, гораздо чаще, в другой таблице). Предположим, что разрабатывается приложение, предназначенное для приема заказов на товары, и что это приложение должно обеспечивать получение оплаты с помощью кредитных карточек. А чтобы иметь возможность получения платежей от компании — эмитента кредитных карточек, необходимо заключить с этой компанией торговое соглашение в определенной форме. Кроме того, требуется, чтобы служащие, принимающие заказы, не брали для оплаты кредитные карточки, выпущенные компаниями, от которых не обеспечивается получение платежей.

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

6.Е Ограничения 215 Таблица 6.1. Пример таблицы домена ПОЛЕ Сгевььоага Поле Сгеозьоагегп УТЗА Маапегеаго Сгасоеег Саго Аееггсап Ехргееа После этого появляется возможность создать одну или несколько таблиц, которые ссылаются на столбец Сгео1ССагс(1Р таблицы домена. Чтобы иметь возможность использовать средства обеспечения ссылочной целостности, необходимо предусматривать в любой таблице (такой как таблица с заказами, Огсегз), которая определена как ссылающаяся на таблицу Сгес1ССагс, такой столбец, который согласуется со столбцом Сгеб1ССагс1Р таблицы Сгеп1ССагс1 С этого момента в каждой строке, вставляемой в таблицу, ссылающуюся на ограничение, должно присутствовать только такое значение, которое имеется в заданном списке домена (иными словами, этому значению должна соответствовать одна из строк в таблице Сгес1ССагс).

Дополнительная информация по этой теме будет приведена при описании ограничений ГОКЕ1ОН КЕУ ниже в данной главе. Способы именования ограничений Прежде чем перейти к рассмотрению различных нюансов использования ограничений, сделаем небольшое отступление и рассмотрим проблему выбора способа именования ограничений. 'Всв 4озмолгные, вИДы огданйбвннй) рассматрйваемые'а-'настоящей гдавв,'Дюжим быть: : обозначены именем,' но разработчик не обязан сам задааать:такое име.: иными словами: :ВСЕГда Мсжио аоейОЛ(ЬЗОВатЬСятЕМ, 'ЧТОФ!Вд БОБ ВЕП)аГПрадбетаааявт НМя дяятОГООГрпа1НИЧВНИа:,:дягяу КОтОПОГО' НМя'НЕ,ВЫЛО, ЛрЕдуспцгстрЕНО".рааграбьтЧНКОМ'. ТЕМ,НЕ МЕНЕЕ' СЛЕдувт' гиэбвтать,ссбяазна ВОСЛОЛЬЗОаатьсй такбй ВОЗМОЖНОСТЬК~,"ПОВКОЛЬКу Всхода ббваружнааат ' ' СЯ,'Чтс йиуана,: СОЗДаапЕМЫЕ СУБД:ЗО(.ЗЯТУЕГ( НЕ ВПОЛНВ ЛРИЕМЛВМЫ, В качестве примера можно указать, что имена, формируемые системой, принимают такой вид; РК Етр1оуеез 145СОАЗЕ.

В данном случае демонстрируется имя, сформированное СУБД БО). Бегтег для первичного ключа таблицы Етр1оуеез базы данных Ассоппг1пс. Информация о том, как создается первичный ключ, будет приведена ниже в данной главе, но в этом примере имени, сформированного системой, РК сокращенно обозначает первичный ключ, рпщагу Кеу (и это — один из компонентов имени ограничения, который следует предусматривать в любом случае), часть имени ограничения Етр1оуеез указывает на таблицу Етр1оуеез, к которой относится это ограничение, а остальная часть имени — это значение, сформированное случайным образом для обеспечения уникальности ограничения.

Очевидно, что имя, сформированное системой, не подходит для повседневного использования, поэтому для разработчика имеет смысл применять такой способ именования, только если он создает первичные ключи с помощью сценария. А в том случае, если бы для создания этой 216 Глава б таблицы использовалась программа Мапаяешепг Бгпсйо, то ограничение получило бы имя РК Емр1оуеея. Но основной недостаток имен, сформированных системой, состоит не в их сложности, а в том, что эти имена не раскрывают сути применяемых ограничений; например, как показано ниже в данной главе, при использовании ограничения СНЕСК системой формируется имя, напоминающее нечто вроде СК Спягопегя 22АА2996. По этому имени можно определить, что оно относится к ограничению СНЕСК, однако невозможно что-либо узнать, в чем состоит характер соответствующей проверки СНЕСК.

Учитывая то, что на одной таблице может быть задано несколько ограничений СНЕСК, можно понять, что при формировании имен ограничений системой все ограничения, заданные на одной и той же таблице, приобретают примерно такие имена: СК Спяговегя 22АА2996 СК Спягояегя 25869641 СК Сиягоаегя 267АВА7А Вполне очевидно,что если возникнет необходимость отредактировать одно из этих ограничений, будет очень сложно выяснить, к чему относится каждое из них. Сам автор стремится явно задавать имя для каждого ограничения и, подготавливая такое имя, задает сокращенное обозначение типа ограничения, а затем либо применяет краткую формулировку назначения этого ограничения, либо указывает имя (имена) столбца (столбцов), на который распространяется данное ограничение.

Например, для ограничения, гарантирующего, чтобы пользователи приложения не продавали товары с убытком, по цене ниже стоимости, может быть задано ограничение с именем СКРгйсеЕхсеебяСояс, а для столбца. в котором должно быть обеспечено наличие телефонных номеров, отформатированных должным образом, может быть достаточно применить такое простое имя, как СКСпяготегРНопено. В настоящей книге уже говорилось о том, какими правилами следует руководствоваться при выборе имен различных объектов, но отметим еще раз, что в действительности не так важен выбор самих имен, как соблюдение перечисленных ниже требований. О Обеспечение единообразия.

О Применение имен, понятных для всех. О Применение наиболее краткой формулировки для имен и вместе с тем соблюдение двух указанных правил. И еще раз подчеркнем необходимость соблюдения единообразия имен. Ограничения ключей В процессе эксплуатации базы данных чаще всего приходится сталкиваться с ключами четырех типов. К ним относятся первичные, внешние, альтернативные и инверсные ключи. В настоящей главе будут рассматриваться только первые три типа из указанных четырех, поскольку именно они лежат в основе ограничений, налагаемых на базу данных. Ограничения 217 Инвфсные хлючи по существу тфедставляют собой любые индексы (индексьс будутп Растмат)тиваться в главе 9), хотпорьсе не нал гают на таблицу ограничения в той или иной фо)т ме (тне, офаниченил пфвичного ключа, внешнего ключа или офаничения уникальности).

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

связь на уровне отношений между множествамн). Поэтому важным требованием к реляционным базам данных является то, что большинство таблиц (за очень редкими исключениями) должно иметь уникальный идентификатор для каждой строки. Уникальный идентификатор позволяет надежно устанавливать связь между строками различных таблиц в базе данных и тем самым формировать отношение между двумя таблицами. В базах дан ньсх, хотфьсе зхсплуати)товолигь в феде мвйнф)сеймов в 1 9ВОх и в начале 1990х годов, а также в базах данных БАМ (с(Вазе, РохРю, С(т)т)сети т.д.) п)тименялся совфшенно д)сугой подход.

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

Столбец первичного ключа должен содержать уникальные значения (и поэтому в этом столбце не допускается наличие МЗ).)=значения). Первичные ключи очень важны для нормальной эксплуатации реляционной базы данных, поэтому являются наиболее фундаментальными объектами базы данных по сравнению со всеми прочими ключами и ограничениями. ЙЕ СЛЕДсУЙ',П)сййТЬ:ЕЕОЕЙЧЙЫЙ КЛЮЧ;, КстойтЫЙ;ОДНОЗЙЕЧЙФ(ИДЯНтйфИЦИ))УЕт:.КЕХСДьУЮ'Стй(ОК)Г,В ,твйвсИцЕ,";.ОййЕВКИфихаусврлОМ'6О)ГЗ„:КОуорЫй ЙЕ)(ЛЕтев.бОЛЕЕ','улНИЧВЕройЛЬИММ'-Сьрвде)ВОМ,";КЕМ йрьвсейло,';примейлемынм,'длй',:иьдуейстйфеикйциибл)'юобыок:ювейуоед(ес;,не,прностс,'с)рлк)',во(корее МЕЙН, И ПРСйтРВНСУВЕ,'-.БЕВУСсдеййс,'.ЙДЕЙтИФИсКЕ)УОГРЫ,;6()))У„'МОПьСУ,ИЕЙОЛВЕОВйт~а-,'В:КЙС)ЕСтйй СЕОВИЧЙОГО''КЛЮЧВ,— ЗИХ) Этьс СВВЗЕНОС;С',НЕССОуерЫМЙ(ДОПОЛНйтЕЛЬЙСЫгМИ:-МДЕржКЙМ;-:-К ФСМу.'Кгй: ЕВЫЧЙО.

Характеристики

Тип файла
PDF-файл
Размер
39,07 Mb
Тип материала
Предмет
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6353
Авторов
на СтудИзбе
311
Средний доход
с одного платного файла
Обучение Подробнее