Skip to content

Оператор CREATE в SQL

Доброго времени суток! В этой статье мы изучим основы создания баз данных и таблиц в phpMyAdmin с помощью оператора CREATE языка SQL.

Создание базы данных

Для начала открываем phpMyAdmin, нажимаем вкладку SQL — откроется окно команд и приготовимся писать наши запросы. Самое первое, что вам следует изучить, это оператор CREATE DATABASE. Он понадобится для создания базы данных.

1. Создать базу данных с именем STORE. [Дополнительно] При создании проверять наличие базы с таким именем.

Все достаточно просто, создадим базу данных следующим запросом:

CREATE DATABASE STORE;

Далее приведем запрос, который проверит, существует ли база данных с таким именем при создании:

#проверка на существование
CREATE DATABASE IF NOT EXISTS STORE;

Вы можете выполнить эти запросы и убедиться, что создается 1 база данных. Также вы уже можете заметить, что комментарии в SQL ставятся с помощью символа хэш (#).

Еще один важный момент заключается в кодировке: лучше всего создавать базу данных с кодировкой utf-8, тогда у вас будут правильно отображаться кириллические символы. Вот окончательный вариант создания базы данных:

CREATE DATABASE STORE CHARACTER SET utf8 COLLATE utf8_general_ci;

Если вам понадобится другая кодировка, то замените ее в этом примере.

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

Базу мы создали, теперь в этой базе нужно создать несколько таблиц, которые впоследствии мы заполним данными. Для создания таблиц используется похожий оператор CREATE TABLE. Для начала выберем ту базу данных, которая нам нужна, если вы работаете в phpMyAdmin, то слева в списке баз данных выберете базу STORE, а затем нажмите на вкладку SQL.

2. Создать три таблицы: Salespeople (Продавцы), Customers (Заказчики), Orders (Заказы) со следующими полями:

— для Salespeople
snum (уникальный номер продавца)
sname (имя)
city (город)
comm (комиссионные)

— для Customers
cnum (уникальный номер заказчика)
cname (имя)
city (город)
rating (рейтинг)
snum (номер продавца, который обслуживает этого заказчика)

— для Orders
onum (уникальный номер заказа)
amt (цена)
odate (дата совершения заказа)
cnum (номер заказчика, сделавшего заказ)
snum (номер продавца, оформившего заказ)

Начнем с создания Salespeople:

CREATE TABLE Salespeople(
  snum INT(11) NOT NULL PRIMARY KEY,
  sname VARCHAR(45) NOT NULL,
  city VARCHAR(45) NOT NULL,
  comm FLOAT NOT NULL
) DEFAULT CHARSET=utf8;

В операторе CREATE TABLE мы указываем имя столбцов, тип данных, хранящийся в этих столбцах, также номер мы представляем как первичный ключ, по этому ключу мы в будущем сможем обращаться к данным. Стоит отметить конструкцию NOT NULL, она говорит о том, что в этом поле не может быть пустых значений. И не забудем про кодировку и зададим ее с помощью CHARSET.

Далее таблица Customers:

CREATE TABLE Customers(
  cnum INT(11) NOT NULL PRIMARY KEY,
  cname VARCHAR(45) NOT NULL,
  city VARCHAR(45) NOT NULL,
  rating FLOAT NOT NULL,
  snum INT(11) NOT NULL,
  FOREIGN KEY (snum) REFERENCES Salespeople(snum)
) DEFAULT CHARSET=utf8;

По сути такой же запрос. Обратите внимание, что здесь мы будем использовать внешний ключ (FOREIGN KEY), который свяжет таблицы по номеру продавца. И наконец, таблица Orders:

CREATE TABLE Orders(
  onum INT(11) NOT NULL PRIMARY KEY,
  amt DOUBLE NOT NULL,
  odate date NOT NULL,
  cnum INT(11) NOT NULL,
  snum INT(11) NOT NULL,
  FOREIGN KEY (cnum) REFERENCES Customers(cnum),
  FOREIGN KEY (snum) REFERENCES Salespeople(snum)
) DEFAULT CHARSET=utf8;

Надеюсь, что здесь все понятно.

Заключение

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

Create Table

На сегодня все, мы с вами познакомились с оператором CREATE в SQL, если у вас остались вопросы, то задавайте их в комментариях.

Опубликовано вSQL

Будьте первым, кто оставит комментарий

    Добавить комментарий

    Ваш e-mail не будет опубликован. Обязательные поля помечены *