Руководство по SQL. Создание таблицы.

Создание таблицы в базе данных (далее – БД) включает в себя присваивание имени таблице и определение колонок и типа данных каждой из них.

Общий синтаксис создания таблицы имеет следующий вид:


CREATE TABLE имя_таблицы(
   колонка1 тип_данных,
   колонка2 тип_данных,
   колонка3 тип_данных,
   ...
   PRIMARY KEY( одна или несколько колонок )
);

Ключевое слово CREATE TABLE говорит RDBMS, что мы хотим создать новую таблицу. В результате этого происходит её создание, при условии корректного синтаксиса.
Таблица должна иметь уникальное имя внутри БД.

Пример:

Предположим, что мы хотим создать таблицу developers, которая будет иметь следующий вид:


SQL> CREATE TABLE developers(
   ID   INT               NOT NULL,
   NAME VARCHAR (100)     NOT NULL,
   SPECIALTY VARCHAR(100) NOT NULL,
   EXPERIENCE  INT        NOT NULL,
   SALARY   INT,       
   PRIMARY KEY (ID)
);

После создания таблицы и добавления в неё данных, она будет иметь следующий вид:


mysql> SELECT * FROM developers;
+----+---------------------+-----------+------------+--------+
| ID | NAME                | SPECIALTY | EXPERIENCE | SALARY |
+----+---------------------+-----------+------------+--------+
|  1 | Eugene Suleimanov   | Java      |          2 |   2000 |
|  2 | Peter Romanenko     | C++       |          3 |   3000 |
|  3 | Andrei Komarov      | C++       |          1 |   1500 |
|  4 | Konstantin Rizhenko | PHP       |          2 |   2200 |
+----+---------------------+-----------+------------+--------+
4 rows in set (0.00 sec)

Мы также можем создать копию уже существующей таблицы:


mysql> CREATE TABLE developers_copy AS 
SELECT ID, NAME, SPECIALTY, EXPERIENCE, SALARY 
FROM developers;
Query OK, 4 rows affected (0.16 sec)
Records: 4  Duplicates: 0  Warnings: 0

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


mysql> SELECT * FROM developers_copy;
+----+---------------------+-----------+------------+--------+
| ID | NAME                | SPECIALTY | EXPERIENCE | SALARY |
+----+---------------------+-----------+------------+--------+
|  1 | Eugene Suleimanov   | Java      |          2 |   2000 |
|  2 | Peter Romanenko     | C++       |          3 |   3000 |
|  3 | Andrei Komarov      | C++       |          1 |   1500 |
|  4 | Konstantin Rizhenko | PHP       |          2 |   2200 |
+----+---------------------+-----------+------------+--------+
4 rows in set (0.00 sec)

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