Проблема при вставке нескольких строк в один столбец MySQL- PHP

#php #mysql #insert

#php #mysql #вставить

Вопрос:

Синтаксис запроса выглядит следующим образом:

 INSERT INTO sent (username,password) VALUES 
 ('user','user2','user3','user4','user5','user6'),
 ('pass','pass2','pass3','pass4','pass5','pass6')
  

Ресурс: http://dev.mysql.com/doc/refman/5.5/en/insert.html

mysql_error () всегда показывает мне это:

 Column count doesn't match value count at row 1
  

Я понятия не имею, что мне делать. Теперь пришло время спросить вас об этом.

Комментарии:

1. В этом случае я должен вставить в каждый столбец 6 значений, и у меня есть два столбца для работы.

2. Вам нужно отформатировать его как INSERT INTO table (field1,field2) VALUES ('user', 'pass'),('user2','pass2') и так далее

3. Хорошо, я понял идею, спасибо.

Ответ №1:

Вы указали 2 столбца с 6 значениями. Количество столбцов и значений должно совпадать. Чего вы хотите, так это:

 INSERT INTO sent (username,password) VALUES ('user','pass'),('user2','pass2'),('user3','pass3'),('user4','pass4'),('user5','pass5'),('user6','pass6')
  

Более подробную информацию см. В документации MySQL:

Операторы INSERT, использующие синтаксис ЗНАЧЕНИЙ, могут вставлять несколько строк. Для этого включите несколько списков значений столбцов, каждое из которых заключено в круглые скобки и разделено запятыми. Пример:

INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);