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

Форум MySQL

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

 

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

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

тема: Duplicate entry '1' for key 1
 
 автор: dima2207   (12.03.2007 в 00:44)   письмо автору
 
 

люди подскажите что это значит , и как с этим бороться ???

Duplicate entry '1' for key 1


Структура таблицы :

CREATE TABLE dbh (
id_a int(6) NOT NULL auto_increment,
field text,
PRIMARY KEY (id_a)
) TYPE=MyISAM

<?php
 
require_once("config.php");

$file_array file("all.csv");
  if(!
$file_array)
  {
    echo(
"Ошибка открытия файла");
  }
  else
  {
    for(
$i=0$i count($file_array); $i++)
    {
   
$texplode(";",$file_array[$i]);
    
$per $t[4]."<br>";
$query "INSERT INTO dbh VALUES('".$i."','" $per "')";


  if(!
mysql_query($query)) exit(mysql_error());
  else
  {
  
//---------------------------------------------------------------------------
  
$query  'SELECT field FROM `dbh` ';
  
$tbl mysql_query($query);
  if(!
$tbl) exit(mysql_error());
  
//---------------------------------------------------------------------------
  
if(mysql_num_rows($tbl))
  {
    while(
$table mysql_fetch_array($tbl))
    {

       echo 
$table['field'];
}
}
}
    }
  }
?>

   
 
 автор: cheops   (12.03.2007 в 01:27)   письмо автору
 
   для: dima2207   (12.03.2007 в 00:44)
 

При повторном выполнении скрипта, когда таблица уже имеет записи - производится попытка вставить в таблицу записи с уже имеющимся ключом. Вместо определённого номера в поле id_a вставляйте значение NULL - механизм AUTO_INCREMENT автоматически назначит полю уникальное значение.

   
 
 автор: dima2207   (12.03.2007 в 01:29)   письмо автору
 
   для: dima2207   (12.03.2007 в 00:44)
 

непойму в чем дело , я уже думал что скрипт перезаписывает при повторном запуске по тем же адресам , но нет , я предварительно удалил все из таблицы , а ошибка все равно присутствует !!! почему ???

   
 
 автор: cheops   (12.03.2007 в 01:31)   письмо автору
 
   для: dima2207   (12.03.2007 в 01:29)
 

Каким оператором удаляли? Обнуление счётчика AUTO_INCREMENT гарантирует только оператор TRUNCATE TABLE.

   
 
 автор: dima2207   (12.03.2007 в 01:33)   письмо автору
 
   для: dima2207   (12.03.2007 в 01:29)
 

ну понял , спасибо !!!!!

   
Rambler's Top100
вверх

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