Базовый курсЕсли мы исходим из того, что комбинация полейДата + Номер урока не является составнымключом, надо добавлять ключевое поле — вариантовнет.Таблица “Мои оценки”Номер записи Дата Номер урока ОценкаТаблица “12 Наши учителя”Фамилия Имя Отчество ПредметИ здесь тоже надо добавлять поле простого ключа.НомерзаписиТаблица “Наши учителя”Фамилия Имя Отчество Предметданных “Ключи”, которая рассматривалась выше,в базе “Ключи1” имеются не связанные между собойтаблицы. Дети должны в процессе обсуждения,исходя из знаний, здравого смысла, разумных допущений,возможно используя дополнительныеисточники информации, установить наличие илиотсутствие естественных ключей (простых из составных)в таблицах.Отметим, что ряд заданий достаточно сложны идаже не имеют однозначного ответа — в зависимостиот сделанных допущений, можно сделать различныевыводы.Вершины мираТаблица “13 Футбольный турнир”Дата Команда 1 Команда 2 СчетИ здесь. Хотя, конечно, два раза в день играть…Но если считать, что такое может случиться, надопредусмотреть и такой случай.НомерзаписиТаблица “Футбольный турнир”Дата Команда 1 Команда 2 СчетОбратите внимание, как часто нам пришлось добавлятьключи!Отметим в заключение, что нередко ключ добавляюти в таблицы, в которых ключи есть. Это чистотехнический вопрос, но мы кратко его обозначим.Если ключ составной и длинный, то для повышениябыстродействия обработки данных может быть целесообразнодобавить простой ключ.С точки зрения географа, парой широта и долготаможно однозначно определить гору, то естьих можно было бы сделать составным ключом,если бы не было особенностей представлениявещественных чисел. Особенность заключаетсяв том, что вещественные числа на различныхкомпьютерах представляются по-разному, с разнойстепенью точности. Поэтому, с точки зренияпроектировщика баз данных, в этой таблицеключей нет.Встречи34январь 2012 / ИНФорматикаОБОБЩЕНИЕ НОВЫХ ЗНАНИЙВ таблицах баз данных не может бытьповторяю щихся строк — любые две строки обязательнодолжны различаться значением хотя быодного поля. Поле или совокупность полей, которыедля любых двух строк таблицы гарантированноразличаются, называются ключом даннойтаблицы. Если ключ состоит из одного поля, егоназывают простым, если из нескольких полей —составным. В составном ключе не должно бытьполей, которые можно было бы исключить безпотери свойства уникальности. Среди всех ключейвыделяют один, о котором сообщают СУБД.Этот ключ называют первичным. Поля, входящиев состав первичного ключа, называют ключевыми.Если среди полей в таблице не удается обнаружитьестественного ключа, ключ приходитсядобавлять...Дополнительные задачи на выявлениеестественных ключейДля практики на уроках дополнительно предлагаетсябаза данных “Ключи1.odb”. Как и в базеКлючей нет, так как в один и тот же день, в однои то же время может быть назначена встреча с двумялюдьми с одинаковыми именами.ГолыКлючей нет, так как один игрок может в течениеминуты забить несколько голов. Если в таблицу добавитьполе секунды, то можно было бы получитьсоставной ключ из всех полей таблицы.
Ежедневникв одной области знаний двух ученых с одинаковымиименами. С этой точки зрения в таблиценет ключа.Планеты Солнечной системыКлючей нет, так как в один год, один месяц, одногочисла может делаться сразу несколько дел.Загруженность дорогНазвание каждой планеты уникально, поэтомуего можно выбрать в качестве простого ключа.Правильные многогранникиЭто задача по мотивам сервиса “Яндекс-пробки”.Если под баллом понимать среднюю загруженностьдорог в данный момент времени данного дня недели,то в этой таблице имеется составной ключ.Мобильные телефоныМодель+производитель может быть составнымключом.НебоскребыЭто очень нетривиальная математическая задача.Понятно, что название правильного многогранникауникально и может быть простымключом. Но простыми ключами также могутбыть число граней и число вершин. Подтверждениеэтому можно увидеть в любом справочникепо математике.СозвездияНазвание+страна+город может быть составнымключом.Нобелевские лауреатыПоиск ключей в этой таблице может потребоватьзнакомства с вопросом. В результате этогознакомства выяснится, что и русское, и латинскоеназвание, и сокращенное обозначение могут бытьпростыми ключами.Спутники планет Солнечной системы35Если подходить к вопросу формально, то возможнаситуация получения премии в один год,Названия двух спутников для разных планет могутсовпадать. Названия планет всегда уникальны,поэтому можно в качестве составного ключа взятьназвание+планета.январь 2012 / ИНФорматика