Для чего нужны
Вот основные задачи БД на примере гардеробной:
- Сохранить наши данные по запросу — чтобы вы могли открыть дверь, повесить куртку, закрыть дверь и больше не думать ни о куртке, ни о гардеробной.
- Изменить наши данные по запросу — чтобы можно было легко извлечь из гардеробной все дырявые носки и положить на их место целые.
- Найти эти данные по запросу — чтобы быстро найти приличный пиджак или парный носок.
- Не дать прочитать эти данные тем, кому не следует, а кому надо — дать. Например, младший брат может смотреть на ваши кроссовки, но не может их брать. А девушка (или парень) может положить свои вещи, но только на определённую полку.
- Поддерживать порядок и не дать захламиться — если вам было лень и вы просто кинули толстовку куда попало, чтобы гардеробная либо сама нашла, куда эту толстовку правильно положить, либо сказала: «Э БРАТ ЗАЧЕМ ЗАХЛАМЛЯЕШЬ ПОЛОЖИ НОРМАЛЬНО ДАВАЙ»
- Масштабироваться — чтобы вы могли просто вешать в гардеробную вещи и не думать об объёме полок.
- Не потерять данные — если квартира будет гореть, приличная гардеробная не должна даже нагреться. Или, если она всё-таки горит, чтобы где-то в защищённом подземном гараже была точная копия этой гардеробной со всеми актуальными вещами.
Использование доменов для контролирования значений в полях
Атрибутивные домены представляют собой правила, определяющие корректные значения для поля в таблице базы геоданных. Они обеспечивают целостность данных путем установки ограничений на то, какие значения данных пользователь сможет добавить в конкретное поле.
Вам следует использовать атрибутивные домены для тех полей, для которых имеется четко определенный набор или диапазон возможных значений, определенных для этого поля. Например, для поля, в котором хранится ответ на вопрос опроса, какая ваша любимая еда? было бы трудно применить домен, поскольку существует большое количество ответов, которые могут быть даны. Однако поле, хранящее данные о цвете глаз, может иметь назначенный для него атрибутивный домен, поскольку существует весьма ограниченное количество возможных значений.
- Черный
- Карий
- Синий
- Зеленый
- Светло-коричневый
- Серый
- Фиолетовый
Использование атрибутивного домена для поля, хранящего данные по цвету глаз, могло бы обеспечить некоторую последовательность, или согласованность значений. Если человеку, производящему сбор данных, было бы разрешено вводить для цвета глаз в текстовое поле любой цвет, то вы бы могли запутаться во всех этих значениях глаз голубого цвета:
- Лазурный
- Цвет морской волны
- Небесно-голубой
- Кобальтовый
- Аквамарин
Атрибутивные домены также предотвращают возможность появления орфографической ошибки или опечатки. Даже если собирающие данные пользователи знали, что им разрешено использовать для обозначения голубого цвета глаз только голубой, они все равно могли бы написать это слово с ошибкой (галубой) или нечаянно нажать в момент ввода в текстовое поле слова голубой не ту клавишу на клавиатуре (голубоц).
Типы данных в базах
В Access можно определить следующие типы полей:
- Текстовый – текстовая строка; максимальная длина задаётся параметром «размер», но не может быть больше 255
- Поле МЕМО – текст длиной до 65535 символов
- Числовой – в параметре «Размер поля» можно задать поле: байт, целое, дейсвительное и т.п.
- Дата/время – поле, хранящее данные о времени.
- Денежный – специальный формат для финансовых нужд, по сути являющийся числовым
- Счётчик – автоинкрементное поле. При добавлении новой записи внутренний счётчик таблицы увеличивается на единицу и записывается в данное поле новой записи. Таким образом, значения этого поля гарантированно различны для разных записей. Тип предназначен для ключевого поля
- Логический – да или нет, правда или ложь, включен или выключен
- Объект OLE– в этом поле могут храниться документы, картинки, звуки и т.п. Поле является частным случаем BLOB– полей ( Binary Large Object ), встречающихся в различных базах данных
- Гиперссылка – используется для хранения ссылок на ресурсы Интернета. Встречается не во всех форматах баз данных. К примеру, такого типа нет в dBaseи Paradox
- Подстановка
Типы данных в таблицах Access
- Текстовый
- Поле МЕМО
- Числовой
- Дата\время
- Денежный
- Счётчик
- Логический
- Объект OLE
- Гиперссылка
Не надо забывать про индексы. Связывать таблицы. Связь с обеспечением целостности контролирует каскадное удаление и модификацию данных.
Монопольный доступ к БД нужен для того, чтобы производить в ней фундаментальные изменения.
В чём преимущества
Базы данных и их системы управления заточены на работу с большим объёмом данных и от лица большого числа пользователей. Сейчас вы поймёте.
Скорость — ещё одно преимущество базы данных. База данных устроена так, что она легко и быстро находит, записывает, переписывает и снова находит данные. Всё потому, что СУБД всегда знает, что где лежит и по какому критерию искать. Там не будет случайных данных в случайном месте.
Скорость важна ещё и потому, что СУБД обычно обслуживает сразу много потоков: одновременно ей могут пользоваться десятки и сотни тысяч человек, поэтому ей некогда копаться. В хорошо сделанных БД всё молниеносно.
Сложность. Базы данных нужны в числе прочего для хранения сложно структурированных данных. Мы привыкли думать, что база данных — это такая таблица, где есть строки и столбцы. Но база данных при правильной организации может намного больше:
- Связывать одну единицу данных с множеством других. Например, если один человек совершил много заказов со множеством товаров внутри каждого, база данных способна хранить и обрабатывать такие связи.
- База может хранить дерево данных — вроде того, о котором мы писали недавно. Попробуй в реальной жизни похранить дерево!
- В базах могут жить ссылки на другие фрагменты и отделы базы.
Базу можно представить как таблицу, но лишь в самом упрощённом виде. Для более сложных задач базу можно представить как очень сложное дерево, или огромный склад упорядоченных коробок, или даже как огромный завод по фасовке данных.
Целостность данных
Референтная целостность — это система правил, которую использует Access, чтобы убедиться, что связи между записями в соответствующих таблицах действительны и что пользователь не удалит или не изменит случайно связанные с ними данные. Вы можете установить целостность данных, когда все следующие условия верны:
- Совпадающие поля из основной таблицы являются первичным ключом или имеет уникальный индекс.
- Связанные поля имеют один и тот же тип данных. Из этого правила есть два исключения: Поле AutoNumber может быть связано с полем Number, которое имеет настройку свойства Long Integer, а поле AutoNumber, которое имеет настройку свойства Replication ID, может быть связано с полем Number, которое имеет настройку свойства Replication ID.
- Обе таблицы относятся к одной и той же базе данных Access. Если таблицы являются связанными таблицами, они должны быть таблицами в формате Access, и необходимо открыть базу данных, в которой они хранятся, чтобы установить целостность данных. Референтная целостность не может быть применена для связанных таблиц из баз данных в других форматах.
При использовании целостности данных применяются следующие правила:
- Невозможно ввести значение во внешнем ключевом поле связанной таблицы, которое не существует в первичном ключе первичной таблицы. Тем не менее, можно ввести значение Null во внешнем ключе. Это указывает на то, что записи не связаны между собой. Например, невозможно иметь заказ, который назначается клиенту, который не существует. Тем не менее, можно иметь заказ, который не назначается никому, введя значение Null в поле CustomerID.
- Вы не можете удалить запись из основной таблицы, если в соответствующей таблице существуют соответствующие записи. Например, вы не можете удалить запись сотрудника из таблицы «Сотрудники», если в таблице «Заказы» есть заказы, назначенные сотруднику.
- Невозможно изменить основное ключевое значение в основной таблице, если эта запись имеет соответствующие записи. Например, вы не можете изменить идентификатор сотрудника в таблице «Сотрудники», если в таблице «Заказы» есть заказы, назначенные этому сотруднику.
Как это работает
Возьмём простой пример реляционной базы данных (можно упрощённо сказать, что это база данных в виде таблицы).
Каждая запись в реляционной базе данных раскладывается в одну или несколько ячеек. Например, запись в телефонной книге может выглядеть так:
В нашем примере у базы есть поля — Имя, Фамилия, Телефон и Фото, в которых могут храниться данные. Одна строчка — одна запись с данными.
Если пользователю нужно будет найти телефон Михаила Максимова по фамилии, происходит следующее:
Запрос от пользователя: Выдай мне из базы «Контакты» все записи, где поле «Фамилия» равно «Максимов»Ответ от базы данных: ЛОЛ КЕК Ты кто такойЗапрос пользователя: Я хозяин этой базы Админ Админыч, пароль •••••. Выдай мне из базы «Контакты» все записи, где поле «Фамилия» равно «Максимов»Ответ от базы данных: Найдена одна запись:
Описание Microsoft Access 2007
Microsoft Access 2007 — одна из ранних сборок популярной системы управления базами данных от одного из ведущих мировых производителей ПО. На базе движка Access 2007 можно построить нормализованную, четко структурированную БД с добавленными в нее ключами, индексами и связями. Также программа располагает возможностью применения интерактивных отчетов, которые извлекают информацию из таблиц на основе заданной бизнес-логики и отображают ее пользователю без необходимости прописывать какие-либо дополнительные параметры и отношения. Отчеты могут содержать как статический текстовый контент, так и динамические поля, сформированные на основе вычислений или извлечения содержимого непосредственно из ячеек таблиц. Приложение Access 2007 поддерживает достаточно широкий набор типов данных, среди которых текстовые, числовые, денежные, фиксированные, экспоненциальные значения, а также дата и время, логические поля, вложения и гиперссылки. Благодаря встроенному мастеру запросов, вся процедура формирования SQL-запросов в Access 2007 полностью автоматизирована, что открывает дополнительные возможности при извлечении содержимого и выборке данных из БД.
Типы баз данных
По способу сохраненных данных: фактографическая и документальная.По способу хранения данных: усредненная, распространенная.По способу организации данных: реляционная (табличная), иерархическая и сетевая (схема 1).
Схема 1. Типы баз данных
Теория управления базами данных начала развиваться как самостоятельный предмет в начале 50-х годов XX века. За это время была сформирована система понятий баз данных. Например:Объектом называется элемент информационной системы, хранящийся в базе данных.Атрибут (латинский – attributio) – запись об определенных параметрах каждого объекта БД.Атрибут является основным элементом БД.
Виды баз данных
- Фактографическая – содержит краткую информацию об объектах некоторой системы в строго фиксированном формате;
- Документальная – содержит документы самого разного типа: текстовые, графические, звуковые, мультимедийные;
- Распределённая – база данных, разные части которой хранятся на различных компьютерах, объединённых в сеть;
- Централизованная – база данных, хранящихся на одном компьютере;
- Реляционная – база данных с табличной организацией данных;
- Неструктурированная (NoSQL) — база данных, в которой делается попытка решить проблемы масштабируемости и доступности за счёт атомарности (англ. atomicity) и согласованности данных, но не имеющих четкой (реляционной) структуры.
Одно из основных свойств БД – независимость данных от программы, использующих эти данные. Работа с базой данных требует решения различных задач, основные из них следующие:
- создание базы;
- запись данных в базу;
- корректировка данных;
- выборка данных из базы по запросам пользователя.
Задачи этого списка называются стандартными.
Следующее понятие, связанное с базой данных: программа для работы с базой данных – это программа, которая обеспечивает решение требуемого комплекса задач. Любая подобная программа должна уметь решать все задачи стандартного набора.
База данных в разных системах имеет различную структуру.
В ПВЭМ обычно используются реляционные БД – в таких базах файл является по структуре таблицей. В ней столбцы называются полями, строки – записями.
В БД содержатся банные некоторого множества объктов. Каждая запись содержит данные одного объекта. Каждая такая БД определяется именем файла, списком полей, шириной полей. Например, БД Школа (Ученик, Класс, Адрес).
Примером БД может служить расписание движения поездов или автобусов. Здесь каждая строчка – запись отражает данные строго одного объекта. База включает поля: номер рейса, маршрута следования, время отправления и т.д.
Классическим примером БД является и телефонный справочник. Запрос к базе данных – это предписание, указывающее, какие данные пользователь желает получить из базы.
Некоторые запросы могут представлять собой серьёзную задачу, для решения которой потребляется составлять сложную программу. Например, запрос к базе – автобусному расписанию: определить разницу в среднем интервале отправления автобусов из Ростова в Таганрог и из Ростова в Шахты.
Объекты для работы с базами данных
Для создания приложения, позволяющего просматривать и редактировать базы данных, нам потребуется три звена:
- набор данных
- источник данных
- визуальные элементы управления
В нашем случае эта триада реализуется в виде:
- Table
- DataSource
- DBGrid
Table подключается непосредственно к таблице в базе данных. Для этого нужно установить псевдоним базы в свойстве DataBaseName и имя таблицы в свойстве TableName, а затем активизировать связь: свойство .
Однако, поскольку Table является невизуальным компонентом, хотя связь с базой и установлена, пользователь не в состоянии увидеть какие – либо данные. Поэтому необходимо добавить визуальные компоненты, отображающие эти данные. В нашем случае это сетка DBGrid. Сетка сама по себе «не знает», какие данные ей нужно отображать, её нужно подключить к Table, что и делается через компонент – посредник .
А зачем нужен компонент – посредник? Почему бы сразу не подключаться к Table?
Допустим, несколько визуальных компонентов – таблица, поля ввода и т.п. подключены к таблице. А нам нужно быстро переключить их все на другую подобную таблицу. С DataSource это сделать несложно — достаточно просто поменять свойство t, а вот без пришлось бы менять указатели у каждого компонента.
Приложения баз данных – нить, связывающая БД и пользователя:
БД => набор данных –=> источник данных => визуальные компоненты => пользователь
Набор данных:
- Table(таблица, навигационный доступ)
- Query(запрос, реляционный доступ)
Визуальные компоненты:
- Сетки DBGrid, DBCtrlGrid
- Навигатор DBNavigator
- Всяческие аналоги Lable, Editи т.д.
- Компоненты подстановки
Технология работы с СУБД Access
Разработка СУБД в Access выполняется при помощи следующих пунктов:
-
Определить цель разработки базы данных. Необходимо определить назначение, узнать, в каком направлении двигаться — как предполагают использовать базу данных, какие результаты хотят получить, какие функции должны быть реализованы.
-
Определить примерное количество таблиц в базе данных — информацию необходимо систематизировать и “разложить все по полочкам”. Не следует добавлять слишком много полей в одну таблицу: лучше распределить данные на две и связать их. Каждая таблица должна содержать только одну тему.
-
Определить все поля и их типы данных в таблицах. Данные в ячейках должны соответствовать типам, чтобы в дальнейшем не возникло проблем с вычислениями, группировкой и сортировкой.
-
Определить соотношения таблицы-поля.
-
Обозначить первичные и (при необходимости) вторичные ключи в таблицах.
-
Построить схему данных для БД, отражающую связи между таблицами. Максимизировать взаимодействие между данными при помощи этих связей.
-
Усовершенствовать структуру, наглядно посмотрев на всю имеющуюся информацию и ее возможную систематизацию.
-
Воспользоваться анализом самого Access для очередной проверки.
Создание СУБД в Access возможно двумя способами:
-
использовать мастера БД для создания необходимых объектов;
-
создать пустую БД, дополняя ее новыми объектами самостоятельно.
MS Access позволяет расширить базу данных уже после ее создания, но основную структуру необходимо продумать заранее: такие вещи, как типы данных, впоследствии, особенно после заполнения таблицы, поменять будет невозможно.
Продуманную схему данных можно реализовать при помощи соответствующей вкладки в СУБД. Каждый из видов связи наглядно показывается в Access. Связи можно видоизменять или даже удалять.
Создание и заполнение баз данных
Типы и форматы полей базы данных
Создание базы данных связано с описанием структуры будущих таблиц. Этот этап работы выполняется в среде СУБД. Пользователь должен указать имена всех полей таблицы, их типы и форматы.
Типы и форматы полей базы данных
Типы полей. Выше уже говорилось о четырех типах полей: символьном, числовом, логическом и «дата». В некоторых СУБД используются и другие типы полей, например, «Время», «День недели», «Адрес» и пр. Кроме того, многие СУБД позволяют создавать поля типа «Примечание». Дело в том, что размер символьного поля обычно ограничен величиной 255 символов. Текст большего размера в него уже не поместится. Примечание позволяет хранить практически неограниченный текст. Он будет храниться в отдельном файле и при необходимости может быть извлечен для чтения.
Форматы полей. Формат символьного поля определяет число символьных позиций, которые будет занимать поле в записи. Например, если символьное поле имеет формат 10, то его значения в различных записях могут содержать от 0 до 10 символов.
Формат числового поля обычно состоит из двух частей: длины и точности. Длина — это полное количество символьных позиций, выделяемых под запись числа; точность — это количество позиций, выделенных под дробную часть. Следует иметь в виду, что десятичная запятая тоже занимает позицию. Например, формат записи числа 123,45 такой: длина — 6, точность — 2. Целое число, т. е. число без дробной части, имеет точность 0.
Формат логической величины стандартный — один символ. Чаще всего используются однобуквенные обозначения: Т — true (истина), F — false (ложь). В нашем учебнике для этих величин используются обозначения русскими буквами: И — истина, Л — ложь.
Формат даты обычно имеет длину 8 символов. Правда, бывают разные стандарты. Мы будем здесь использовать стандарт ДД/ММ/ГГГГ (или ДД.ММ.ГГГГ, или ДД-ММ-ГГГГ). Здесь ДД — обозначение числа, ММ — месяца, ГГГГ — года. Иногда используется стандарт ММ/ДД/ГГГГ. Бывают и другие обозначения.
Для примера в табл. 3.3 описаны типы и форматы полей из базы данных «Погода».
Создание новой базы данных
Создание новой базы данных начинается с описания структуры таблицы. По команде
. создать <имя файла>
пользователю предлагается заполнить таблицу типа таблицы 3.3. Затем необходимо указать первичный ключ таблицы. В данном примере первичным ключом является поле ДЕНЬ. Имя файла, в котором будет храниться база данных, пользователь задает сам.
Чтобы осмыслить этот этап работы, можно предложить следующую аналогию. Представьте себе, что строится овощная база. В ней монтируются отсеки, холодильники, контейнеры, ящики для хранения картофеля, моркови, лука, капусты и пр. Иначе говоря, готовится место для хранения, но овощи пока не завозятся. После того как
овощная база создана, она готова к приему овощей.
В результате создания базы данных появляется файл с указанным именем, определяется структура данных, которые будут в ней храниться. Но база пустая, информации в ней пока нет.
Создание новой таблицы в режиме таблицы
В режиме таблицы пользователь может создать таблицу, не определяя предварительно ее структуры.
Создание новой таблицы в режиме таблицы осуществляется выбором строки Создание таблицы путем ввода данных в рабочем поле окна базы данных или строки Режим таблицы в окне Новая таблица.
После выбора этого режима сразу открывается пустая таблица, в которую можно ввести данные. При сохранении этой таблицы Access проанализирует Данные и автоматически присвоит соответствующий тип данных каждому полю, т. е. автоматически создаст структуру таблицы. Таблица имеет 10 столбцов и 21 строку. Полям таблицы по умолчанию присваиваются имена Поле1, Поле2 и т. д.
Любое поле этой таблицы можно переименовать в соответствии с требованиями пользователя, непосредственно редактируя имена в заголовке столбцов. Для этого дважды щелкните кнопкой мыши на области выделения столбца, содержащей его имя, или выполните команду Формат | Переименовать столбец. В результате курсор будет установлен на наименовании поля и откроется возможность его переименования. Для сохранения нового имени щелкните кнопкой мыши в любом месте таблицы.
Если требуется создать таблицу, содержащую более 20 полей, то можно вставить новые столбцы. Для этого установите указатель мыши в области столбца, слева от которого требуется вставить новый столбец, и выполните команду Вставка | Столбец.
Кроме переименования и вставки столбцов, допускается удаление столбцов или изменение их положения в таблице. Для удаления столбца его необходимо пометить, щелкнув кнопкой мыши на его заголовке, и выполнить команду Правка | Удалить столбец. Для перемещения столбца его следует пометить, оставив курсор на заголовке, нажать кнопку мыши и, удерживая ее, перетащить столбец в нужное место.
В каждый столбец вводятся данные определенного типа. При вводе данных, для которых определены стандартные форматы, необходимо использовать форматы из установленного для этого типа списка. Это позволяет Access автоматически определить тип данных. Свойство Формат поля остается пустым и при отображении данных используется формат по умолчанию. При сохранении таблицы все оставленные пустыми столбцы будут удалены.
По окончании ввода данных во все нужные столбцы необходимо сохранить таблицу, выполнив соответствующую команду. При сохранении таблицы выводится приглашение для создания ключевого поля. При выборе кнопки Да в таблицу будет добавлено ключевое поле типа Счетчик. Если введены данные, которые могут однозначно идентифицировать каждую запись, и их надо сделать ключевыми, то нужно нажать кнопку Нет. В этом случае пользователь должен самостоятельно создать ключ в режиме конструктора.
Только после сохранения таблицы Access создает ее структуру и делает возможным переход в режим конструктора таблиц. Тип данных каждого поля определяется форматом введенных данных. Если в дальнейшем потребуется изменить определение поля, например, задать другой тип данных, формат, указать значения по умолчанию, создать маски ввода, определить условие присвоения значения или добавить новые поля, то эти действия можно выполнить в режиме конструктора.
Вне зависимости от способа создания таблицы режим конструктора позволяет в любой момент изменить ее структуру.
Следует заметить, что возможности создания таблицы в режиме ввода данных являются ограниченными и, как правило, требуют доработки таблицы в режиме конструктора. Очевидно и то, что при создании таблицы этим способом пользователь не освобождается от необходимости знать допустимые в Access типы данных и форматы их отображения.
Если при заполнении таблицы правильно выбран формат даты, но при вводе допущена хотя бы одна ошибка, Access так же, как и в случае неверно выбранного формата, определит для такого поля тип данных Текстовый. При вводе ошибочного значения в таблицу с заранее определенной структурой и уже заданным типом данного Access обнаружит ошибку и сообщит об этом.
Формат вводимых в поле чисел, денежных единиц, времени, и даты должен совпадать с одним из форматов, определенных для этих типов данных. В окне конструктора таблиц можно просмотреть список установленных форматов для перечисленных типов данных. Некоторые из них можно изменить на соответствующих вкладках в окне Язык и стандарты. Для отображения этого окна нажмите на панели задач кнопку Пуск, выполните команды Настройка и Панель управления и запустите программу Язык и стандарты.
§13. Таблицы
Ключ
При чтении и изменении данных в таблице очень важно убедиться, что мы обращаемся именно к нужной записи. Это означает, что для надёжной работы каждая запись должна содержать какое-то уникальное значение, отличающее её от всех остальных.. Ключ — это поле или комбинация полей, однозначно определяющая запись
Ключ — это поле или комбинация полей, однозначно определяющая запись.
Это значит, что ключ обладает свойством уникальности: в таблице не может быть двух записей, у которых одинаковое значение ключа. Например, ключом может быть номер паспорта, номер мобильного телефона, регистрационный номер автомобиля, адрес электронной почты и т. п.
Иногда можно выделить в таблице несколько ключей, например номер внутреннего паспорта и номер заграничного паспорта.
В этом случае один из них выбирается в качестве основного и называется первичным ключом.
Ключ, состоящий из одного поля, называется простым, а соответствующее поле таблицы — ключевым полем.
Простой ключ часто называют идентификатором от слова «идентифицировать» — отличить один объект от другого.
Ключ, который состоит из нескольких полей, называется составным. Представим себе базу данных метеостанции, на которой через каждые 3 часа измеряются температура, влажность воздуха, скорость ветра и т. п. (рис. 3.5).
Рис. 3.5
Здесь ни одно поле не может быть ключом, потому что значения в каждом из них могут повторяться. Однако для каждой пары Дата + Время в таблице может быть только одна запись, поэтому комбинация полей Дата и Время — это ключ.
Второе свойство ключа — несократимость. Заметим, что в рассмотренном примере к паре Дата + Время можно добавить и другие поля таблицы, но такая группа полей уже не будет считаться ключом, потому что она сократима, т. е. из неё можно исключить все поля, кроме полей Дата и Время, сохранив свойство уникальности.
Теперь посмотрим на приведённую на рис. 3.4 таблицу «список контактов». Ни фамилия, ни имя не могут быть ключом, потому что есть много однофамильцев и людей с одинаковыми именами. Составить ключ из полей Фамилия и Имя тоже не получится (могут быть однофамильцы и тёзки одновременно). Адрес и домашний телефон также не могут быть ключом, потому что в одной квартире могут жить несколько человек, с которыми вы общаетесь. В принципе может получиться так, что ключом будет комбинация всех полей записи.
Работать с составными ключами при выполнении операций с базой данных на практике очень неудобно. В таких случаях часто добавляют в таблицу ещё одно поле — так называемый суррогатный (т. е. неестественный) ключ, например номер записи. Во многих СУБД есть возможность заполнять его автоматически при добавлении каждой новой записи (рис. 3.6). При этом пользователю не нужно задумываться об уникальности такого ключа.
Рис. 3.6
Следующая страница Индексы
Cкачать материалы урока