Создание, удаление и модификация таблиц.

Создание таблицы:

Синтаксис:

CREATE TABLE <имя_таблицы>

(<имя_столбца> {<тип_данных> | AS <выражение>}

{[DEFAULT <значение>] | [IDENTITY [(начальное значение, инкремент)]]}

{[NULL | NOT NULL] | [UNIQUE | PRIMARY KEY]}

[REFERENCES <имя главной таблицы> [(<имя столбца>)]]

, ...)

Имя таблицы должно быть уникальным в пределах базы данных, а имена столбцов – уникальными в пределах таблицы.

Наиболее часто используется повторяющаяся конструкция <имя столбца> <значение>:

NULL указывает на то, в этом столбце возможны неопределённые значения (естественно, такой столбец не может быть ключевым).

UNIQUE (ограничение целостности) указывает, что каждое значение в столбце является уникальным в пределах этого столбца. Для такого ограничения целостности автоматически создаётся индекс.

PRIMARY KEY – создаётся первичный ключ на базе соответствующего столбца. Для таблицы может быть создано только одно такое ограничение целостности.

DEFAULT – указывается значение по умолчанию для данного столбца.

IDENTITY – создаётся столбец-счётчик. Только один столбец может быть счётчиком.

REFERENCES – определяет, что столбец будет служить внешним ключом для таблицы, указанной с помощью параметра <имя главной таблицы>. Столбцы, входящие во внешний ключ, могут ссылаться только на столбцы первичного ключевого ограничения или ограничения UNIQUE. Дополнительно ограничение может быть уточнено ключевыми словами ON DELETE {CASCADE | NO ACTION} ON UPDATE {CASCADE | NO ACTION}

 

Примеры создания таблиц (работа с которыми была рассмотрена выше):

CREATE TABLE authors (au_id INT PRIMARY KEY, author CHAR(25) NOT NULL);

CREATE TABLE publishers (pub_id INT PRIMARY KEY, publisher VARCHAR(255) NOT NULL, url VARCHAR(255) DEFAULT ‘неизвестен’);

CREATE TABLE titles (title_id INT NOT NULL PRIMARY KEY, title CHAR(255) NOT NULL, yearpub INT, pub_id INT REFERENCES publishers(pub_id);

Создание таблицы с вычисляемыми полями:

CREATE TABLE MyTable (FirstCol int, SecondCol int, ThirdCol AS (FirstCol+SecondCol)/2.0)

 

Удаление таблицы:

Синтаксис:

DROP TABLE <имя_таблицы>

 

Модификация таблицы:

Команда ALTER TABLE берёт на себя все действия по копированию данных во временную таблицу, удалению старой таблицы, созданию вместо неё новой таблицы с нужной структурой и последующим переписыванием в неё данных. Все эти действия происходят без участия пользователя, при этом установленные права доступа к таблице сохраняются.

 

Добавление столбцов (синтаксис):

ALTER TABLE <имя_таблицы> ADD

(< возможное содержание аналогично содержимому в скобках для команды CREATE TABLE >

,...)

Удаление столбцов:

ALTER TABLE <имя_таблицы> DROP (<имя столбца>, …)

Модификация столбцов:

ALTER TABLE <имя_таблицы> MODIFY

(< возможное содержание аналогично содержимому в скобках для команды CREATE TABLE >

,...)

Пример:

ALTER TABLE MyTable ADD DateCol datetime DEFAULT GETDATE() NOT NULL UNIQUE

 








Дата добавления: 2015-07-30; просмотров: 866;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.