Запрос CREATE

 

Оператор CREATE DATABASE служит для создания новой базы данных и имеет следующий формат:

 

CREATE DATABASE <Имя базы данных>

 

Оператор CREATE TABLE служит для создания новой таблицы базы данных и имеет следующий формат:

 

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

<Имя поля> <Тип данных>,

<Имя поля> <Тип данных>);

 

В этом операторе обязательно указание хотя бы одного имени поля и его типа данных.

Приведем пример создания простой таблицы:

 

CREATE TABLE MyTable (

Number INTEGER,

Name CHAR(20),

Surname CHAR(20)

);

 

При этом в каталоге текущей базы данных создастся новая таблица муТаblе, состоящая из полей Number, Name и Surname. Первое поле имеет целочисленный тип (INTEGER), остальные поля - символьного типа и ограничены длиной в 20 символов.

Если при выполнении этого запроса выяснится, что таблица с таким именем уже существует, будет сгенерирована исключительная ситуация.

 

Следующий SQL-запрос определит ключевое поле

для MySQL:

 

CREATE TABLE Persons

(

P_Id int NOT NULL,

LastName varchar(255) NOT NULL,

FirstName varchar(255),

Address varchar(255),

City varchar(255),

PRIMARY KEY (P_Id)

)

 

для SQL Server:

CREATE TABLE Persons

(

P_Id int NOT NULL PRIMARY KEY,

LastName varchar(255) NOT NULL,

FirstName varchar(255),

Address varchar(255),

City varchar(255)

)

 

Следующий SQL-запрос добавит внешний ключ P_Id для поля P_Id таблицы Persons

для MySQL:

CREATE TABLE Orders

(

O_Id int NOT NULL,

OrderNo int NOT NULL,

P_Id int,

PRIMARY KEY (O_Id),

FOREIGN KEY (P_Id) REFERENCES Persons(P_Id)

)

 

для SQL Server

CREATE TABLE Orders

(

O_Id int NOT NULL PRIMARY KEY,

OrderNo int NOT NULL,

P_Id int FOREIGN KEY REFERENCES Persons(P_Id)

)

Для создания инкремента в ключевом поле, то есть, чтобы счетчик самостоятельно увеличивался на определенное значение, необходимо использовать атрибут IDENTITY(seed, increment) с параметрам, где seed – значение, присваиваемое самой первой строке, загружаемой в таблицу, increment - значение приращения, которое прибавляется к значению идентификатора предыдущей загруженной строки. В большинстве случаев требуется задавать:

 

IDENTITY(1, 1).

 

Таким образом, результирующий SQL-запрос для SQL Server будет выглядеть следующим образом:

 

CREATE TABLE Orders

(

O_Id int NOT NULL PRIMARY KEY IDENTITY(1, 1),

OrderNo int NOT NULL,

P_Id int FOREIGN KEY REFERENCES Persons(P_Id)

)

 








Дата добавления: 2015-05-19; просмотров: 896;


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

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

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

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