--
Удаляем таблицу.
DROP
TABLE IF EXISTS table3;
--
Индекс можно создать в самой таблице.
CREATE
TABLE IF NOT EXISTS table3
(
id
INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Код товара',
name
VARCHAR(50) NOT NULL DEFAULT '' COMMENT 'Название товара',
price
FLOAT NOT NULL DEFAULT 0 COMMENT 'Цена товара',
PRIMARY
KEY(id)
)
COMMENT 'Таблица товаров';
-- Для вставки
в БД больших объемов информации можно
временно отключать индексы. После
загрузки индексы включаются.
-- Отключение
индексов при загрузке.
ALTER TABLE table3
DISABLE KEYS;
--
Вставим данные.
INSERT
IGNORE INTO table3
VALUES
(NULL,
'Товар 1', 12.10),
(NULL,
'Товар 2', 13.10),
(NULL,
'Товар 3', 14.10),
(NULL,
'Товар 4', 15.10),
(NULL,
'Товар 5', 16.10),
(NULL,
'Товар 6', 17.10);
-- Включение
индексов после загрузки.
ALTER TABLE table3
ENABLE KEYS;
--
Посмотрим, что в таблице.
SELECT
* FROM table3;
-- Загрузка из
файла.
--
Например у нас есть файл data.txt с информаций,
которую мы хотим загрузить.
/*
NULL Товар
1 12.10
NULL Товар
2 12.10
NULL Товар
3 12.10
NULL Товар
4 12.10
*/
--
Файл должен быть отформатированным,
как правило, знаками табуляции.
LOAD DATA
INFILE 'data.txt'
INTO TABLE table3
FIELDS TERMINATED BY
'\t'
LINES TERMINATED BY
'\r\n';
--
Меняем кодировку.
SET
NAMES 'cp866';
--
Посмотрим, что в таблице.
SELECT
* FROM table3;
-- Конкуретные
запросы: HIGH_PRIORITY ИЛИ LOW_PRIORITY
INSERT
HIGH_PRIORITY INTO table3
VALUES
(NULL,
'Товар 10', 12.10),
(NULL,
'Товар 20', 13.10),
(NULL,
'Товар 30', 14.10),
(NULL,
'Товар 40', 15.10),
(NULL,
'Товар 50', 16.10),
(NULL,
'Товар 60', 17.10);
--
Посмотрим, что в таблице.
SELECT
* FROM table3;
-- Создадим
таблицу на движке MYISAM.
CREATE
TABLE IF NOT EXISTS table7
(
id
INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Код товара',
name
VARCHAR(50) NOT NULL DEFAULT '' COMMENT 'Название товара',
price
FLOAT NOT NULL DEFAULT 0 COMMENT 'Цена товара',
PRIMARY
KEY(id)
)
ENGINE MYISAM COMMENT 'Таблица товаров';
-- Загрузка с
отложенным запросом. Сервер загрузит
данные, когда сможет. Работает только
на движке MYISAM.
INSERT
DELAYED INTO table7
VALUES
(NULL,
'Товар 10', 12.10),
(NULL,
'Товар 20', 13.10),
(NULL,
'Товар 30', 14.10),
(NULL,
'Товар 40', 15.10),
(NULL,
'Товар 50', 16.10),
(NULL,
'Товар 60', 17.10);
--
Посмотрим, что в таблице.
SELECT
* FROM table7;
Комментариев нет:
Отправить комментарий