В этом учебном материале вы узнаете, как использовать оператор CREATE TABLE с синтаксисом, примерами и практическими упражнениями.
Описание
SQL оператор CREATE TABLE позволяет создавать и определять таблицу.
Синтаксис
Синтаксис для оператора CREATE TABLE в SQL.
(
column1 datatype [ NULL | NOT NULL ],
column2 datatype [ NULL | NOT NULL ],
...
);
Параметры или аргумент
- table_name
- Имя таблицы, которую вы хотите создать
- column1, column2
- Столбцы, которые вы хотите создать в таблице. Каждый столбец должен иметь тип данных. Столбец должен быть определен как NULL или NOT NULL, и если это значение оставить пустым, база данных принимает NULL в качестве значения по умолчанию
Пример
Рассмотрим SQL пример CREATE TABLE.
1 2 3 4 5 |
CREATE TABLE suppliers ( supplier_id int NOT NULL, supplier_name char(50) NOT NULL, contact_name char(50) ); |
Этот SQL пример CREATE TABLE создает таблицу suppliers, которая имеет 3 столбца.
- Первый столбец называется supplier_id, который создается в виде числового типа (максимум 10 цифр в длину) и не может содержать нулевые значения
- Второй столбец называется supplier_name, который представляет собой тип данных char (максимальная длина 50 символов) и также не может содержать нулевые значения
- Третий столбец называется contact_name, который является типом данных char, но может содержать нулевые значения
Теперь единственная проблема с этим SQL оператором CREATE TABLE заключается в том, что вы не определили первичный ключ для таблицы. Мы могли бы изменить этот SQL оператор CREATE TABLE и определить supplier_id в качестве первичного ключа следующим образом.
1 2 3 4 5 6 |
CREATE TABLE suppliers ( supplier_id int NOT NULL, supplier_name char(50) NOT NULL, contact_name char(50), CONSTRAINT suppliers_pk PRIMARY KEY (supplier_id) ); |
Подробнее о первичных ключах.
Подробнее о внешних ключах..
Практическое упражнение № 1
Создайте таблицу SQL с именем customers, в которой хранится информация о клиенте, его имени и адресе.
Решение для упражнения № 1
Инструкция SQL CREATE TABLE для таблицы customers.
1 2 3 4 5 6 7 8 |
CREATE TABLE customers ( customer_id int NOT NULL, customer_name char(50) NOT NULL, address char(50), city char(50), state char(25), zip_code char(10) ); |
Практическое упражнение № 2
Создайте таблицу SQL с именем customers, в которой хранится информация о клиенте, его имени и адресе.
Но на этот раз идентификатор клиента должен быть первичным ключом для таблицы.
Решение для упражнения № 2
Инструкция SQL CREATE TABLE для таблицы customers.
1 2 3 4 5 6 7 8 9 |
CREATE TABLE customers ( customer_id int NOT NULL, customer_name char(50) NOT NULL, address char(50), city char(50), state char(25), zip_code char(10), CONSTRAINT customers_pk PRIMARY KEY (customer_id) ); |
Практическое упражнение № 3
На основе приведенной ниже таблицы departments создайте таблицу SQL с именем employees, в которой хранится информация о номере сотрудника, его имени, отделе и зарплате. Первичный ключ для таблицы employees должен быть номером сотрудника. Создайте внешний ключ в таблице employees, которая ссылается на таблицу departments, на основе поля department_id.
1 2 3 4 5 |
CREATE TABLE departments ( department_id int NOT NULL, department_name char(50) NOT NULL, CONSTRAINT departments_pk PRIMARY KEY (department_id) ); |
Решение для упражнения № 3
Инструкция SQL CREATE TABLE для таблицы employees.
1 2 3 4 5 6 7 8 9 10 |
CREATE TABLE employees ( employee_number int NOT NULL, employee_name char(50) NOT NULL, department_id int, salary int, CONSTRAINT employees_pk PRIMARY KEY (employee_number), CONSTRAINT fk_departments FOREIGN KEY (department_id) REFERENCES departments(department_id) ); |