Создание таблицы
- Главная
- >>>
- Раздел>>>sql
- >>>
- Материал>>>
-
Создать таблицу в базе данных позволяет SQL-команда
CREATE TABLE <�Имя таблицы> (
<�Имя поля1> <�Тип данных> [<�Опции>],
<�Имя поля2> <�Тип данных> [<�Опции>],
...
) [<�Дополнительные опции>];
В параметре <�Опции> могут быть указаны следующие значения:
- NOT NULL означает, что поле обязательно должно иметь значение при вставке новой записи в таблицу (если не задано значение по умолчанию). Если опция не указана, то поле может быть пустым;
- PRIMARY KEY указывает, что поле является первичным ключом таблицы. Записи в таком поле должны быть уникальными. Опция также может быть указана после перечисления всех полей;
- AUTO_INCREMENT указывает, что поле является счетчиком: если при вставке новой записи указать NULL, то MySQL автоматически генерирует значение, на единицу большее максимального значения, уже существующего в поле. В таблице может быть только одно поле с этой опцией;
- DEFAULT задает для поля значение по умолчанию, которое будет использовано, если при вставке записи для этого поля не было явно указано значение;
- CHARACTER SET определяет кодировку текстового поля;
- COLLATE задает тип сортировки текстового поля.
-
В параметре <�Дополнительные опции> могут быть указаны следующие значения:
- ENGINE — тип таблицы (например, MyISAM);
- DEFAULT CHARSET — кодировка (например, cp1251);
- AUTO_INCREMENT — начальное значение для автоматической генерации значения поля.
Для вывода всех типов таблиц, поддерживаемых текущей версией MySQL, предназначена SQL-команда
SHOW ENGINES;
На практике обычно используются два типа таблиц — MyISAM и InnoDB. Тип MyISAM является "родным" типом таблиц и применяется по умолчанию. Хотя версии MySQL под Windows по умолчанию могут устанавливать тип InnoDB. В отличие от типа MyISAM таблицы типа InnoDB поддерживают транзакции и внешние ключи, но не имеют поддержки полнотекстового поиска. Кроме того, таблицы типа InnoDB работают медленнее таблиц MyISAM, но зато они более надежны.
Для вывода всех кодировок применяется SQL-команда
SHOW CHARACTER SET;
Чтобы получить список всех типов сортировки можно воспользоваться SQL-командой
SHOW COLLATION;
Создадим таблицы из нашего первоначально рассмотренного примера. Для этого в левой части из списка выбираем базу tests. С правой стороны выбираем вкладку SQL.
В текстовом поле набираем следующие команды:
CREATE TABLE `City` (
`id_City` INT NOT NULL AUTO_INCREMENT,
`City` CHAR(50) NOT NULL,
PRIMARY KEY (`id_City`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
CREATE TABLE `Customers` (
`id_Customer` INT NOT NULL AUTO_INCREMENT,
`Name` CHAR(50) NOT NULL,
`Address` CHAR(255) NOT NULL,
`id_City` INT NOT NULL,
`Phone` CHAR(30),
PRIMARY KEY (`id_Customer`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
CREATE TABLE `Tovar` (
`id_Tovar` INT NOT NULL AUTO_INCREMENT,
`Tovar` CHAR(50) NOT NULL,
`Price` INT NOT NULL,
PRIMARY KEY (`id_Tovar`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
CREATE TABLE `Orders_Items` (
`id_Orders` INT NOT NULL,
`id_Tovar` INT NOT NULL,
`Col` TINYINT unsigned,
PRIMARY KEY (`id_Orders`, `id_Tovar`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
CREATE TABLE `Orders` (
`id_Orders` INT NOT NULL AUTO_INCREMENT,
`id_Customer` INT NOT NULL,
`Date_orders` DATE,
`Sum` INT,
PRIMARY KEY (`id_Orders`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
Можно набрать все команды одновременно, а можно и по отдельности. Чтобы выполнить запрос, нажимаем кнопку OK. Все созданные таблицы отображаются слева под списком баз данных:
tests (5)
city
customers
orders
orders_items
tovar
Если таблицы не отобразились, то обновите страницу.
Если щелкнуть на названии таблицы, то справа отобразится ее структура.
Вывести все таблицы из указанной базы данных позволяет SQL-команда
SHOW TABLES FROM <�Имя базы данных>;
Вывести все таблицы из указанной базы данных позволяет SQL-команда
SHOW TABLES FROM `tests`;
Чтобы отобразить структуру конкретной таблицы из указанной базы данных, можно воспользоваться командой SQL
SHOW COLUMNS FROM <�Таблица> FROM <�Имя базы данных>;
Для примера выведем структуру таблицы City из базы данных tests:
SHOW COLUMNS FROM `City` FROM `tests`;
Отобразить структуру таблицы позволяет также SQL-команда
DESCRIBE <�Таблица>;
В отличие от команды SHOW COLUMNS, перед использованием команды DESCRIBE база данных должна быть предварительно выбрана. Для примера выведем структуру таблицы Orders из базы данных tests:
USE `tests`;
DESCRIBE `Orders`;
Просмотров материала: 424
Добавить комментарий: