Таблицы являются основным механизмом хранения данных. Задать ее структуру можно напрямую запросом либо на основании выборки (в основном для временного хранения). Основные действия над структурой таблицы: добавление/изменение/удаление колонок, изменение типа данных полей. Над информацией содержащийся в таблице - вставка/изменение/удаление строк.
Создание таблиц
Общий синтаксис прямого указания структуры выглядит так:CREATE [TEMPORARY] TABLE [IF NOT EXISTS] <имя_таблицы> [DEFINITION] [TABLE_OPTIONS] [SELECT_STATEMENT]
Значение в квадратных скобках являются не обязательными.
[TEMPORARY] - если указано ключевое слово TEMPORARY, будет создана временная таблица и она будет удалена после окончания сеанса.
[IF NOT EXISTS] - проверка, на существование таблицы с таким же именем.
[DEFINITION] - указывается структура таблицы: имена и типы данных полей, индексы, ключи и пр.
[TABLE_OPTIONS] - дополнительные атрибуты к таблице, так называемые EXTRA параметры: указание движка, генерация суррогатного ключа и пр.
[SELECT_STATEMENT] - поля и их значения в полученные после выборки SELELCT. Это как раз тот случай создания таблиц на основе запросов.
Создадим новую БД с именем test_bd
CREATE DATABASE test_bd;
Используем команду USE для выбора базы по умолчанию:
И создадим новую таблицу staff и выполним запрос:
CREATE TABLE staff ( id MEDIUMINT NOT NULL AUTO_INCREMENT, name CHAR(30) NOT NULL, age SMALLINT(6) NOT NULL, salary int(15) NOT NULL, PRIMARY KEY(id) )
Как видно из запроса, поля назначаются: имя, тип данных, NOT NULL - отсутствие значения недопустимо, AUTO_INCREMENT - автоматическая генерация суррогатных ключей. Только для типа INT и наличия PRIMARY KEY для этого поля.
В PRIMARY KEY указывается первичный ключ, или ключи через запятую.
Обратите внимание, что в последней строке запятая не ставится, он лишь служит для разделения полей.
Таблицы создана. Чтобы просмотреть ее стурктуру, необходимо выполнить команду DESCRIBE или сокращенно DESC
DESCRIBE staff;
Изменение структуры таблицы
Добавим новую колонку phone после колонки age. Для этого используется команда ALTER:
ALTER TABLE staff ADD phone TINYTEXT NOT NULL AFTER age;
И после этого выполним DESC для просмотра текущей структуры таблицы:
Клонирование структуры таблицы
Для создания полной копии структуры таблицы в новую, используется оператор LIKE:
CREATE TABLE employees LIKE staff;
И просмотреть список всех таблиц:
SHOW TABLES;
Просмотрите структуру новой таблицы.
Удаление таблицы
Ну а удалить таблицу проще пареной репы, ломать не строить,
используем оператор DROP TABLE:
DROP TABLE employees;
Клонированная таблица удалена.
Новость отредактировал: Владелец - 11-11-2011, 02:42
Причина: дополнение