Chinaunix

标题: innodb auto_increment id 做主键的时候注意了 [打印本页]

作者: showsa    时间: 2009-02-27 11:32
标题: innodb auto_increment id 做主键的时候注意了
CREATE TABLE `ivan` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `content` varchar(10) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=Innodb DEFAULT CHARSET=latin1;

insert into ivan(id, content) values(-100, '');

show create table ivan;

[ 本帖最后由 showsa 于 2009-2-27 11:33 编辑 ]
作者: 枫影谁用了    时间: 2009-02-27 11:45
刚在5.1.30上试了下这个。有这样的的问题。

mysql> insert into ivan(id, content) values(100, '');
Query OK, 1 row affected (0.00 sec)

mysql> select * from ivan;
+------+---------+
| id   | content |
+------+---------+
| -100 |         |
|  100 |         |
+------+---------+
2 rows in set (0.00 sec)
作者: showsa    时间: 2009-02-27 11:47
会出现


CREATE TABLE `ivan` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `content` varchar(10) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=18446744073709551517 DEFAULT CHARSET=latin1



这是5.1.26 和5.1.30下测试出现
作者: 枫影谁用了    时间: 2009-02-27 11:49
原帖由 showsa 于 2009-2-27 11:47 发表
会出现


CREATE TABLE `ivan` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `content` varchar(10) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=18446744073709551517 DEFAULT CH ...


哥们提下这bug呗。


这个bug我提过了。
mysql> select count(*) from ivan;
+----------+
| count(*) |
+----------+
|        5 |
+----------+
1 row in set (0.00 sec)

mysql> TRUNCATE ivan;
Query OK, 0 rows affected (0.02 sec)

mysql> select count(*) from ivan;
+----------+
| count(*) |
+----------+
|        5 |
+----------+
1 row in set (0.00 sec)

mysql>
作者: huifeideluotuo    时间: 2009-02-27 14:03
不是吧,竟然还有这样的低级bug

sun真让人太失望了。。。。。
作者: 枫影谁用了    时间: 2009-02-27 14:52
标题: 回复 #5 huifeideluotuo 的帖子
去看看bug列表,类似的bug很多哦
作者: yueliangdao0608    时间: 2009-02-27 21:32
标题: 回复 #5 huifeideluotuo 的帖子
没有软件是没有BUG的。
作者: yejr    时间: 2009-02-28 10:06
原帖由 showsa 于 2009-2-27 11:32 发表
CREATE TABLE `ivan` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `content` varchar(10) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=Innodb DEFAULT CHARSET=latin1;

insert into ivan(id, content) v ...


呵呵,自己故意捣乱啊,设定下sql_mode,规范化下就好了




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2