Базы данных - модели, разработка, реализация



         

Операторы DDL в языке SQL с заданием ограничений целостности - часть 3


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

В главе 5 определены типы данных, которые допустимы по стандартам SQL. Попробуем написать простейший оператор создания таблицы BOOKS из базы данных "Библиотека".

При этом будем предполагать наличие следующих ограничений целостности:

  • Шифр книги - последовательность символов длиной не более 14, однозначно определяющая книгу, значит, это - фактически первичный ключ таблицы BOOKS.
  • Название книги - последовательность символов, не более 120. Обязательно должно быть задано.
  • Автор - последовательность символов, не более 30, может быть не задан.
  • Соавтор - последовательность символов, не более 30, может быть не задан.
  • Год издания - целое число, не менее 1960 и не более текущего года. По умолчанию ставится текущий год.
  • Издательство - последовательность символов, не более 20, может отсутствовать.
  • Количество страниц - целое число не менее 5 и не более 1000.
  • CREATE TABLE BOOKS
  • (
  • ISBN varchar(14) NOT NULL PRIMARY KEY,
  • TITLE varchar(120) NOT NULL.
  • AUTOR varchar (30) NULL.
  • COAUTOR varchar(30) NULL.
  • YEAR_PUBL smallint DEFAULT Year(GetDate( )) CHECK(YEAR_PUBL >= I960 AND
  • YEAR PUBL
  • 142

  • PUBLICH varchar(20) NULL,
  • PAGES smallint CHECK(PAGES > - 5 AND PAGES
  • ):
  • Почему мы не задали обязательность значения для количества страниц в книге? Потому что это является следствием проверочного ограничения, заданного на количество страниц, количество страниц всегда должно лежать в пределах от 5 до 1000, значит, оно не может быть незаданным и система это контролирует автоматически.

    Теперь зададим описание таблицы "Читатели", которой соответствует отношение READERS:

  • Номер читательского билета - это целое число в пределах 32 000 и он уникально определяет читателя.
  • Имя, фамилия читателя - это последовательность символов, не более 30.
  • Адрес - это последовательность символов, не более 50.
  • Номера телефонов рабочего и домашнего - последовательность символов, не более 12.



  • Содержание  Назад  Вперед