SQL в PostgreSQL: заполнение таблицы строками

Оператор INSERT используется для заполнения таблицы строками:

INSERT INTO weather VALUES ('San Francisco', 46, 50, 0.25, '1994-11-27');

Обратите внимание, что все типы данных используют довольно очевидные форматы ввода. Константы, которые не являются простыми числовыми значениями, обычно должны быть заключены в одинарные кавычки ('), как в примере. Тип даты на самом деле довольно гибкий в том, что он принимает.

Тип point требует ввода пары координат, как показано здесь:

INSERT INTO cities VALUES ('San Francisco', '(-194.0, 53.0)');

Синтаксис, который использовался до сих пор, требует, чтобы вы запомнили порядок столбцов. Альтернативный синтаксис позволяет явно перечислить столбцы:

INSERT INTO weather (city, temp_lo, temp_hi, prcp, date)
    VALUES ('San Francisco', 43, 57, 0.0, '1994-11-29');

Вы можете перечислить столбцы в другом порядке, если хотите, или даже опустить некоторые столбцы, например, если количество осадков неизвестно:

INSERT INTO weather (date, city, temp_hi, temp_lo)
    VALUES ('1994-11-29', 'Hayward', 54, 37);

Многие разработчики считают явное перечисление столбцов лучшим стилем, чем неявное использование порядка.

Вы также можете использовать COPY для загрузки больших объемов данных из файлов с плоским текстом. Обычно это быстрее, потому что команда COPY оптимизирована для этого приложения, но допускает меньшую гибкость, чем INSERT. Примером может быть:

COPY weather FROM '/home/user/weather.txt';

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


Читайте также:

Комментарии

Популярные сообщения из этого блога

Язык поисковых запросов в Graylog

Нормальные формы, пример нормализации в базе данных

Хэш-таблица: разрешение коллизий