Я ищу способ вставки нескольких строк, когда я вставляю данные только для одного столбца.
Вот пример таблицы:
+-------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+----------------+
| id | tinyint(4) | NO | PRI | NULL | auto_increment |
| name | varchar(40) | NO | UNI | NULL | |
+-------+-------------+------+-----+---------+----------------+
Я хочу иметь возможность вставить что-то вроде ('admin', 'author', 'mod', 'user', 'guest') в столбец имени для каждой строки.
Документация MySQL показывает, что несколько вставок должны быть в формате:
INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);
Однако мое утверждение выглядит так:
INSERT INTO User_Role(name) VALUES ('admin','author','mod','user','guest');
И я получаю следующее:
ОШИБКА 1136 (21S01): количество столбцов не соответствует значению в строке 1
Это означает, что мне кажется, что я пытаюсь вставить одну строку.
Я не уверен, что здесь просто пропущено что-то простое, но я не вижу ничего особенного в документации по MySQL для этого варианта использования.