Управл_данными / 14-create
.pdfУправление данными
SQL
Создание таблиц и работа с ними
Зудилин А.Э. 2013
Создание таблиц
Язык SQL используется не только для манипуляций с данными таблиц, он предназначен для
выполнения всех операций с базами данных и таблицами, включая собственно создание таблиц и работу с ними.
Существует два способа создания таблиц:
1)Большинство СУБД сопровождается
инструментарием администратора, который можно использовать для интерактивного создания таблиц базы данных и управления ими.
2)Таблицами можно также манипулировать посредством операторов языка SQL.
2
Создание таблиц программным способом
Для создания таблиц программным способом используют оператор SQL: CREATE TABLE.
В действительности, когда вы используете интерактивный инструментарий, вся работа выполняется операторами SQL.
Однако вам не приходится писать эти операторы, интерфейс создает и выполняет их незаметно для вас.
Точный синтаксис оператора CREATE TABLE может несколько отличаться для разных реализаций SQL.
Полное рассмотрение всех опций, применяемых при создании таблиц, не входит в задачи нашего курса, мы рассмотрим только основы.
3
Оператор CREATE TABLE
Чтобы создать таблицу с помощью оператора CREATE TABLE, нужно указать следующие данные:
1)имя новой таблицы, оно вводится после ключевого слова CREATE TABLE;
2)имена и определения столбцов таблицы, разделенные запятыми
CREATE TABLE Имя_Таблицы
( Список_полей_с_их_определениями )
4
Пример 1
CREATE TABLE Студент
(
id INTEGER NOT NULL, Фамилия CHAR(60) NOT NULL, Имя CHAR(60) NOT NULL, Отчество CHAR(60), Дата_рожд DATE,
Группа CHAR(7)
)
Имя таблицы указывается сразу же после ключевых СЛОВ CREATE TABLE.
Определение таблицы (все ее столбцы) заключается в круглые скобки.
Имена столбцов разделяются запятыми.
Определение каждого столбца начинается с имени столбца, за ним указывается тип данных.
5
Уникальность имен
Когда вы создаете новую таблицу, указываемое вами имя не должно существовать в этой базе данных, иначе будет выдано сообщение об ошибке.
Имена столбцов должны быть уникальными в пределах данной таблицы
6
Работа со значениями NULL
Для каждого столбца таблицы пустое значение либо допустимо (NULL), либо не допустимо (NOT NULL), и это помещается в определение таблицы во время ее создания.
При попытке добавления записи в которой не определено значение столбца с атрибутом “NOT NULL” - будет возвращено сообщение об ошибке, и добавить такую запись не удастся.
Значение NULL является значением по умолчанию, поэтому, если не указано требование NOT NULL, предполагается разрешение на использование значения NULL
7
Что такое NULL
Значение NULL означает отсутствие значения; это не пустая строка.
Если вы указали в коде '' (две одинарных кавычки, между которыми ничего нет), это "значение" можно было бы ввести в столбец типа NOT NULL.
Значения NULL указываются посредством ключевого слова NULL, но не пустой строкой.
Операции с NULL:
NULL + 5 = NULL ’rr’ + NULL = NULL ’rr’ + ’’ = ’rr’
8
Пример 2
В предыдущем примере была создана таблица без первичного ключа.
Это не допустимо в теории реляционных БД, но язык SQL не строго придерживается теории.
Правильный запрос должен указывать ключевое поле с помощью параметра PRIMARY KEY
CREATE TABLE users
(
login CHAR(20) NOT NULL PRIMARY KEY, password CHAR(20),
level INT
)
9
Определение значений по умолчанию
Язык SQL позволяет определять значения по умолчанию, которые будут использованы в том случае, если при добавлении строки какое-то ее значение не указано.
Значения по умолчанию определяются с помощью ключевого слова DEFAULT в определениях столбца оператора CREATE TABLE.
CREATE TABLE Продукт
( id INT NOT NULL PRIMARY KEY, Название CHAR(50) NOT NULL, Количество INT NOT NULL DEFAULT 1, Цена DECIMAL(8,2) NOT NULL
)
10