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

       

INSERT INTO


СИНТАКСИС:

INSERT INTO table [(column_name, ...)] VALUES (expression,...) INSERT INTO table [(column_name, ...)] SELECT ...

ОПИСАНИЕ:

Вставляет данные в таблицу.

  • В выражении можно использовать любое предыдущее поле в списке column_name (или таблицу, если список имен столбцов не задан).
  • При использовании SELECT вы не можете указать ORDER BY.
  • Вы можете использовать функцию C API mysql_info для получения строки:

@result{Records: 220 Duplicates: 1 Warnings: 1}

  • Records показывает число записей, возвращенных SELECT'ом.
  • Duplicates = число строк, которые не могли быть вставлены из-за дублирования ключей.
  • Warnings = счетчик числа столбцов в запросе SELECT, которые равны NULL, но были объявлены как NOT NULL для таблицы, в которую Вы вставляете результаты. Столбцы получат значение по умолчанию (помните: в MySQL все NOT NULL столбцы имеют значение по умолчанию!). Если Вы не объявляли при создании таблицы это самое значение, оно будет автоматически назначено, основанным на типе поля.
  • Если Вы желаете вставить NULL в данное значение, Вы должны сделать это, не определяя значение для поля, в которое Вы желаете вставить NULL.

ПРИМЕР:

INSERT INTO Customer(customer_name,customer_contact) VALUES("Joes Wholesale","Joe Smith")

Этот запрос создаст новую запись в таблице Customer, которая будет содержать автоматически сгенерированный customer_id, и значения, определенные в запросе. Все другие поля будут пустыми (NULL).

Вы также можете использовать SELECT для копирования элементов из одной таблицы в другую. MySQL поддерживает ограниченную форму запросов sub, для выполнения этой возможности.

Вы должны иметь права доступа insert для использования этой команды.



Содержание раздела