MySQL: Несколько Вставок для отдельного столбца

Я ищу способ сделать, несколько располагают в ряд, вставляет, когда я только вставляю данные для отдельного столбца.

Вот таблица в качестве примера:

+-------+-------------+------+-----+---------+----------------+
| Field | Type        | Null | Key | Default | Extra          |
+-------+-------------+------+-----+---------+----------------+
| id    | tinyint(4)  | NO   | PRI | NULL    | auto_increment | 
| name  | varchar(40) | NO   | UNI | NULL    |                | 
+-------+-------------+------+-----+---------+----------------+

Я хочу смочь вставить что-то как ('администратор', 'автор', 'модификация', 'пользователь', 'гость') в столбец имени для каждой строки.

Документация 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 для этого варианта использования.

9
задан Jessica Brown 31 July 2011 в 21:24
поделиться

1 ответ

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

INSERT INTO User_Roll(name) VALUES ('admin'), ('author'), ('mod'), ('user'), ('guest');
20
ответ дан 4 December 2019 в 10:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: