Документация на MySQL



         

LOAD DATA INFILE


СИНТАКСИС:

LOAD DATA INFILE syntax

ОПИСАНИЕ:

Команды, для чтения данных из текстового файла.

ПРИМЕР:

LOAD DATA INFILE 'customer.tab' [REPLACE | IGNORE] INTO TABLE Customer [fields [terminated by ',' [optionally] enclosed by '"' escaped by '\\' ]] [lines terminated by '\n'] [(field list)]

Для записи в текстовый файл используйте:

SELECT ... INTO OUTFILE 'customer.tab' fields terminated by ',' enclosed by '"' escaped by '\\' lines terminated by '\n' .

"fields terminated by" Имеет значение по умолчанию \t.
"fields [optionally] enclosed by" Имеет значение по умолчанию ".
"fields escaped by" Имеет значение по умолчанию '\\'.
"lines terminated by" Имеет значение по умолчанию '\n'.

"fields terminated by" и "lines terminated by" могут быть больше, чем 1 символом.

Если "fields terminated by" и "fields enclosed by" являются пустыми строками, то размер строки будет фиксированным. То есть, будет производиться чтение полей одной длины.

С фиксированными значениями NULL для размера строки будут выводиться пустые строки.

Если указаны "optionally" в "enclosed by" и Вы не используете фиксированный размер строк, только строки с этим символом будут включены в команду SELECT ... INTO.

Если "escaped by" не пусто, то следующие символы будут снабжены префиксом: "escaped by", ASCII 0, и первый символ из "fields terminated by", "fields enclosed by" и "lines terminated by".

Если использован REPLACE, новая строка заменит все строки, которые имеют тот же самый уникальный ключ. Если использован IGNORE, строки будут пропущен, если там уже существует запись с идентичным уникальным ключом. Если ни один из вышеупомянутых параметров не используется, будет выдана ошибка, и остальная часть textfile будет игнорироваться, если найден дублирующий ключ.

Некоторые ситуации, которые не поддерживаются LOAD DATA INFILE:

  • Фиксированные размеры строк ("FIELDS TERMINATED BY" и "FIELDS ENCLOSED BY" являются пустыми) и поля BLOB.
  • Разделитель, являющийся префиксом другого разделителя.
  • "FIELDS ESCAPED BY" пустое и данные содержат один или несколько разделителей.




Содержание  Назад  Вперед