|
Программирование >> Исключение дубликатов строк
Мы также рассмотрели тонкую настройку таблиц. Имена таблиц - это в такой же степени важный вопрос, как и имена полей, во многих случаях по тем же самым причинам. Теперь вы знаете, как присвоить своим таблицам имена, поддающиеся интерпретации, и гарантировать, что каждая таблица представляет только отдельный предмет. Мы привели набор правил, которые следует использовать для обеспечения надежности структуры каждой таблицы. Хотя некоторые из этих правил повторяют и и и правила, используемые для тонкой настройки структур полей, их применение для тонкой настройки структур таблиц добавляет дополнительный уровень гарантий, обеспечивающий, насколько возможно, абсолютную надежность структур таблиц. Кроме того, мы обсудили первичные ключи и важность определения первичного ключа для каждой таблицы базы данных. Первичный ключ должен удовлетворять определенному набору характеристик, и поле, которое будет служить первичным ключом таблицы, необходимо выбирать с особой тщательностью. Можно создать искусственный первичный ключ, если в таблице отсутствует поле, которое удовлетворяет полному набору характеристик для первичного ключа. В конце главы мы обсудили вопрос оптимизации связей и представили три их типа на диаграмме. Теперь вы знаете, как определить и обозначить на диаграмме правило удаления для связи. Это правило помогает защититься от зависших записей. Последние два вопроса касались типа и степени участия каждой таблицы в связи. Участие таблицы может быть обязательным или необязательным, и можно установить конкретный диапазон для количества зависимых записей между ка>кдой из таблиц. KpciTKCisi истории SQl Существует только одна религия, хотя во множестве вариантов - Джордж Бернард Шоу Приятные и неприятные пьесы вопросы, россмотривоемыв в донной главе Истоки SQL Ронние реолизоции ... о зотем был Стондорт Эволюция стондорто ANSI/ISO Что готовит будущее Зочем учить SQL Итоги зложение истории всегда включает неопределен(ные и неоднозначные оценки различных событий, политические интриги и человеческие слабости. История SQL не отличается в этом смысле от истории любых других предметов. В той или иной форме SQL использовался почти с самого момента появления реляционной модели, и существует несколько подробных отчетов о его длительном (и в нескольких вариантах) существовании. В данной главе мы более пристально рассмотрим происхождение, развитие и будущее этого языка баз данных. Перед нами две цели. Первая - дать представление о том, как SQL развивался в язык, используемый сегодня боль- шинством систем реляционных баз данных, а вторая знать, как использовать SQL. объяснить, почему важно Истоки SQL Д-р Э. Ф. Кодд представил реляционную модель базы данных в 1970 г. Вскоре после этого поворотного момента такие организации, как университеты и исследовательские лаборатории, начали прилагать усилия к разработке языка, который мог бы использоваться как фундамент для СУБД, поддерживающих реляционную модель. Исходная работа привела в середине 70-х годов к разработке нескольких языков, а в результате последующих усилий появились SQL и базы данных, основанные на SQL, используемые сегодня. Но где истоки SQL? Как он развивался? Какое у него будупдее? Для ответа на эти вопросы мы должны начать наш рассказ из исследовательской лаборатории IBM в Сан-Хосе, штат Калифорния. В начале 1970-х годов IBM начала разрабатывать большой исследовательский проект System/R. Этот проект должен был доказать жизнеспособность реляционной модели и дать некоторый опыт проектирования и реализации реляционной базы данных. Первоначальные попытки исследователей в 1974-75 гг. достигли успеха: удалось создать самый базовый прототип реляционной базы данных. Кроме того, разработчики также трудились над определением языка баз данных. Можно утвер>вдать, что работа, выполненная в этой лаборатории, является наиболее коммерчески значашей из всех первоначальных попыток определения такого языка. В 1974 г. д-р Дональд Чемберлин и его коллеги разработали структурированный английский язык запросов (Structured English Query Language, SEQUEL, произносится сиквел ). Этот язык позволял осушествлять запросы к реляционной базе данных, используя четко определенные предложения, близкие к английскому языку. Д-р Чемберлин и его сотрудники вначале реализовали этот новый язык в прототипе базы данных с наименованием SEQUEL-XRM. Первоначальные отклики и успех SEQUEL-XRM поддержали намерения д-ра Чем-берлина и его сотрудников продолжать исследования. В 1976-77 гг. они полностью пересмотрели SEQUEL и назвали новую версию SEQUEL/2. Однако впоследствии, по юридическим причинам, наименование SEQUEL было изменено на SQL (Structured Query Language) - оказывается, сокраш,ение SEQUEL уже кем-то использовалось. До сих пор многие все еш,е произносят название языка как сиквел , хотя широко принятым официальным произношением является эскюэль . В SQL появилось несколько новых возможностей, таких как поддержка многотабличных запросов и одновременный доступ нескольких пользователей к совместно используемым данным. Вскоре после появления SQL IBM начала новый и еш,е более амбициозный проект, нацеленный на создание прототипа БД, который доказал бы коммерческую пригодность реляционной модели. Новый прототип был назван System R и основывался на большом подмножестве SQL. После завершения большей части исходной работы по разработке IBM инсталлировала System R на нескольких собственных системах и вычислительных комплексах избранных клиентов для тестирования и оценки. В System R и SQL было внесено множество изменений, основанных на опыте и откликах пользователей. IBM закрыла проект в 1979 г., сделав вывод, что реляционная модель является действительно ценной технологией для коммерческих БД. Внимание! Одним из наиболее важных успехов, приписываемых этому проекту, является разработка SQL. Но предком SQL в действительности был язык, созданный в исследовательских целях, который назывался SQUARE (Specifying Queries As Relational Expressions - Определение запросов как реляционных выражений). Этот язык был разработан в 1975 г. (т. е. еш,е до запуска проекта System R) и был спроектирован для реализации реляционной алгебры в предложениях, близких к английскому языку.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |