Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Column count doesn't match value count at row 1
 
 автор: tim_mironov   (19.10.2005 в 17:23)   письмо автору
 
 

При выполнении следующего запроса
<?php
if(!mysql_query("INSERT INTO user VALUES ('".$POSTsurname."', '".$POSTname."', '".$POSTpatronymic."', '".$POSTlogin."', '".$POSTpassword."', '".$POSTemail."');"))
exit(
"Ошибка - ".mysql_error());
?>

для такой таблицы

   Поле               Тип          Сравнение                                Ноль По умолчанию  
   surname         char(20)               cp1251_general_cs   Да      NULL                
   name               char(20)               cp1251_general_cs   Нет                  
   patronymic      char(20)               сp1251_general_cs   Да      NULL                
   nik                     char(20)               cp1251_general_ci    Нет                  
   password        char(32)               cp1251_general_cs   Нет                  
   e-mail               char(45)               cp1251_general_ci   Да       NULL                
   status               enum('a', 'm', 'u') cp1251_general_ci   Нет     u                
   lastcamedate  timestamp                                                 Нет    CURRENT_TIMESTAMP    

вылезает следующая ошибка
Column count doesn't match value count at row 1
Помогите, пожалуйста, разобраться в причине.

   
 
 автор: 10100100   (19.10.2005 в 17:37)   письмо автору
 
   для: tim_mironov   (19.10.2005 в 17:23)
 

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

Попрбуйте вот так...

<?php 
if(!mysql_query("INSERT INTO user VALUES ('".$POSTsurname."', '".$POSTname."', '".$POSTpatronymic."', '".$POSTlogin."', '".$POSTpassword."', '".$POSTemail."',".$POSTstatus.");")) 
exit(
"Ошибка - ".mysql_error()); 
?> 

   
 
 автор: tim_mironov   (19.10.2005 в 19:15)   письмо автору
 
   для: 10100100   (19.10.2005 в 17:37)
 

Спасибо за участие.
Пробовал и даже нашел ошибку: надо задавать значения для нетекстовых полей. Тут возникает вопрос: как обойтись без введения нетекстовых полей, чтобы MySQL подставлял в эти поля значения по умолчанию.

   
 
 автор: cheops   (20.10.2005 в 01:38)   письмо автору
 
   для: tim_mironov   (19.10.2005 в 19:15)
 

Используйте альтернативный синтаксис оператора INSERT
INSERT INTO user SET surname = 'surname', name = 'name' и т.д.

   
 
 автор: tim_mironov   (20.10.2005 в 11:58)   письмо автору
 
   для: cheops   (20.10.2005 в 01:38)
 

Спасибо.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования