Мои проблемы с sql Количество столбцов не соответствует количеству значений в строке 1 - PullRequest
0 голосов
/ 03 марта 2012

Мой sql:

$tsqla="INSERT INTO xcal (id, date, 1sfta, 1sftb, 2sfta, 2sftb, 3sfta, 3sftb, 4sfta, 4sftb, 5sfta, 5sftb, 6sfta, 6sftb, location) VALUES ('NULL','" . $tsdate . "', '". implode("','",$date_array[$jyr.'-'.$jmnth.'-'.$jday])."','E')";

Который печатается так:

INSERT INTO xcal (id, date, 1sfta, 1sftb, 2sfta, 2sftb, 3sfta, 3sftb, 4sfta, 4sftb, 5sfta, 5sftb, 6sfta, 6sftb, location) 
VALUES ('NULL','2010-008-31', '0','0','0','0','0','0','0','0','0','0','0','0','E')

Есть 15 столбцов, 15 значений, зачем мне страшиться: «Количество столбцов не соответствует значению в строке 1» Любая помощь приветствуется: D

1 Ответ

0 голосов
/ 03 марта 2012

Так как ID уже auto-incremented, вы можете опустить его в предложении запроса.Затем вы должны добавить backtick в одно из ваших полей, которое является date, потому что в MySQL это ЗАБРОНИРОВАННОЕ слово .

$tsqla="INSERT INTO xcal (`date`, 1sfta, 1sftb, 2sfta, 2sftb, 3sfta, 3sftb, 
                          4sfta, 4sftb, 5sfta, 5sftb, 6sfta, 6sftb, `location`) 
        VALUES ('" . $tsdate . "', '". implode("','",
                 $date_array[$jyr.'-'.$jmnth.'-'.$jday])."','E')";

Попробуйте, если это работает.И еще одна вещь, проверьте также их соответствующие типы данных.INT поля должны иметь значения с no single quote.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...