MySQL: INSERT INTO `test` (`test_id`) VALUES (0)
   Код:
 
CREATE TABLE IF NOT EXISTS `test` (
 `test_id` int(10) unsigned NOT NULL auto_increment,
 PRIMARY KEY (`test_id`)
) ENGINE=MyISAM;
  Винаги ми вмъква като стойност следващият пореден номер. С InnoDB пак е същото.
А UPDATE `test` SET `test_id` = 0 WHERE `test_id` = 1; работи.
 
Как мога да направя така, че още INSERT-та да ми вмъква 0?
     Re:MySQL: INSERT INTO `test` (`test_id`) VALUES (0)
  пробвай да пуснеш NO_AUTO_VALUE_ON_ZERO режима на MySQL, само че не ти препоръчвам да ползваш 0 за primary key, тъй като можеш да имаш доста проблеми ^_^
 
(иначе AUTO_INCREMENT почва от 1, просто щото е max + 1)
     Re:MySQL: INSERT INTO `test` (`test_id`) VALUES (0)
  Благодаря за предложението! Ще го пробвам, но в близките няколко дни няма да имам възможност.
 
Таблицата е за една номенклатура, която има една стойност със специално предназначение и трябва да е "забита" на нещо. 0 ми се стори подходящо (както може да е всяко друго число).
Защо ще прави проблем?
     Re:MySQL: INSERT INTO `test` (`test_id`) VALUES (0)
  точно заради проблема, който си описал :)
представи си, че правиш backup на таблицата, а после я restore-ваш другаде или без включената опция - тогава MySQL ще види 0-та и ще ти генерира sequence (следваща) стойност вместо 0-та
(а и в крайна сметка това е primary key, дефиниран като NOT NULL - разбира се, NULL и 0 са принципно различни, но като тип, не и като стойност)
     Re:MySQL: INSERT INTO `test` (`test_id`) VALUES (0)
  Още веднъж благодаря! Определено има смисъл това. Ще си сменя стойността, но 0 ми се вързваше идеално :(