Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
all_lab.doc
Скачиваний:
47
Добавлен:
14.11.2019
Размер:
1.42 Mб
Скачать

Синтаксис команды create table

Общий формат инструкции CREATE TABLE таков:

CREATE [TEMPORARY] TABLE [IF NOT EXISTS] имя

[(спецификация, ...)]

[опция, ...]

[ [IGNORE | REPLACE] запрос]

Флаг TEMPORARY задает создание временной таблицы, существующей в течение текущего сеанса. По завершении сеанса таблица удаляется. Временным таблицам можно присваивать имена других таблиц, делая последние временно недоступными. Спецификатор IF NOT EXIST подавляет вывод сообщений об ошибках в случае, если таблица с указанным именем уже существует. Имени таблицы может предшествовать имя базы данных, отделенное точкой. Если это не сделано, таблица будет создана в базе данных, которая установлена по умолчанию.

Чтобы задать имя таблицы с пробелами, необходимо заключить его в апострофы, например 'courses list'. То же самое нужно будет делать во всех ссылках на таблицу, поскольку пробелы используются для разделения идентификаторов.

Разрешается создавать таблицы без столбцов, однако в большинстве случаев спецификация хотя бы одного столбца все же присутствует. Спецификации столбцов и индексов приводятся в круглых скобках и разделяются запятыми. Формат спецификации следующий:

имя тип

[NOT NULL | NULL]

[DEFAULT значение]

[AUTO_INCREMENT]

[KEY]

[ссылка]

Удаление таблиц

Для того чтобы удалить таблицу, убедимся вначале, что она существует. Это можно проверить с помощью команды SHOW TABLES.

Для удаления таблицы используется команда DROP TABLE.

Теперь команда SHOW TABLES; этой таблицы больше не покажет.

Синтаксис команды drop table

Инструкция DROP TABLE имеет следующий синтаксис:

DROP TABLE [IF EXISTS] таблица [RESTRICT | CASCADE]

Спецификация IF EXISTS подавляет вывод сообщения об ошибке, выдаваемого в случае, если заданная таблица не существует. Можно указывать несколько имен таблиц, разделяя их запятыми.

Флаги RESTRICT и CASCADE предназначены для выполнения сценариев, созданных в других СУБД.

Типы данных

MySQL поддерживает несколько типов данных.

  • Числовые данные – к ним относят целые числа, не содержащие дробной части (например, 124), а также вещественные числа, состоящие из последовательности цифр, разделенных точкой (например, 56.45).

  • Строковые данные – последовательность символов, заключенных в одинарные или двойные кавычки: ‘Hallo world’, ‘123’, “MySQL”. В качестве стандарта в SQL определяются одинарные кавычки, поэтому для совместимости с другими базами данных рекомендуется использовать именно их.

  • Календарные данные – специальный тип для обозначения даты и времени, может принимать различную форму, например строковую “2007-04-28” или числовую 20070428. Основной характеристикой этого типа дынных является их хранение в едином внутреннем формате, позволяющем осуществлять операции сложения и вычитания, независимо от внешнего представления.

  • NULL – специальный тип данных, обозначающий отсутствие информации.

Числовые данные

MySQL поддерживает все числовые типы данных языка SQL92 по стандартам ANSI/ISO. Они включают в себя типы точных числовых данных (NUMERIC, DECIMAL, INTEGER и SMALLINT) и типы приближенных числовых данных (FLOAT, DOUBLE). Ключевое слово INT является синонимом для INTEGER, а ключевое слово DEC - синонимом для DECIMAL.

Таблица 2. Наиболее часто используемые числовые типы полей MySql

Тип

Байт

От

До

TINYINT

1

-128

127

SMALLINT

2

-32768

32767

MEDIUMINT

3

-8388608

8388607

INT

4

-2147483648

2147483647

BIGINT

8

-9223372036854775808

9223372036854775807

FLOAT

4

±1.175494351∙10-39

±3.402823466∙1038

DOUBLE

8

±2.2250738585072014∙10-308

±1.797693134862315∙10308

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]