auto_increment в mysql

Discussion in 'PHP' started by Дикс, 27 Feb 2008.

Thread Status:
Not open for further replies.
  1. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    создаю простую таблицу:

    CREATE TABLE `bb_news` (
    `id` int(10) unsigned NOT NULL auto_increment,
    `title` varchar(255) NOT NULL default '',
    `body` text,
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=1;

    пробую вставить в неё значения через phpmyadmin:

    #1366 - Incorrect integer value: '' for column 'id' at row 1

    Отчего вдруг id перестало получать значение автоматически??
     
  2. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,194
    Reputations:
    252
    Code:
    CREATE TABLE `bb_news` (
    `id` int(11) NOT NULL auto_increment,
    `title` varchar(255) NOT NULL default '',
    `body` text,
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=1;
    Твоя ошибка происходит потому что ты добавляешь значение те NULL в колонку auto_increment
    А значение должно быть NULL

    Т.е. у тебя что-то типа
    PHP:
    <?php
    $query 
    "INSERT INTO `bb_news` VALUES ('3', 'My Title', 'Textttt')";
    ?>
    А надо:

    PHP:
    <?php
    $query 
    "INSERT INTO `bb_news` VALUES (NULL, 'My Title', 'Textttt')";
    ?>
     
    #2 banned, 27 Feb 2008
    Last edited: 27 Feb 2008
    1 person likes this.
Thread Status:
Not open for further replies.