CREATE TABLE example6 (
id INT PRIMARY KEY AUTO_INCREMENT ,
stu_id INT NOT NULL,
name VARCHAR(20) NOT NULL
)
/*插入一条数据*/
insert into example6values (1,002,'黎明');
/*ok 可以实现*/
/*再插一条数据失败!!!!!*/
insert into example6 values (2,002,'黎明'); 或者
insert into example6 values (,002,'黎明'); 为什么?具体应该怎么弄才能实现自增,求指教!给出最简单的代码
15 个解决方案
#1
insert into example6(stu_id,name) values (002,'黎明');
这些问题在搜索引擎上都很容易找到的诶,为何要提问呢?
#2
自增值不用插入,它会自动增加!
#3
1楼+1
自增字段必须要用 insert into tb(xxx,xxx) values(xxx,xxx)这种格式,不能偷懒不写字段
#4
mysql的自增列稍微有点不同,虽然你定义了自增列,但是你也可以插入数据,
所以这个能插入; insert into example6 values (1,002,'黎明');
这个应该也是可以插入的 insert into example6 values (2,002,'黎明');
而insert into example6 values (,002,'黎明'); 第一列没有写值,所以就会报错,改为:
insert into example6
(id,stu_id,name) values (002,'黎明');
#5
试过了,不行啊
#6
也不行啊!
#7
insert into example6 values (null,002,'黎明')
#8
把错误信息贴出来啊!
#9
自增字段的ID不要写出来啊.
insert into example6(stu_id, name) values (002,'黎明');
SHOW TABLE STATUS LIKE '表名'; 看一下是不是auto_increment的值有问题
#13
上面的都不行,那你应该还有其他的索引,导致相同的不能插入
#14
可以的,楼主的错误信息是?
#15
范列sql:
CREATE TABLE example6 (
id INT PRIMARY KEY AUTO_INCREMENT ,
stu_id INT NOT NULL,
name VARCHAR(20) NOT NULL
);
insert into example6 values (1,002,'黎明');
insert into example6 values (2,003,'黎明2');
select * from example6;
执行过程如下所示:
mysql> CREATE TABLE example6 (
-> id INT PRIMARY KEY AUTO_INCREMENT ,
-> stu_id INT NOT NULL,
-> name VARCHAR(20) NOT NULL
-> );
Query OK, 0 rows affected (0.03 sec)
SHOW TABLE STATUS LIKE '表名'; 看一下是不是auto_increment的值有问题
#13
上面的都不行,那你应该还有其他的索引,导致相同的不能插入
#14
可以的,楼主的错误信息是?
#15
范列sql:
CREATE TABLE example6 (
id INT PRIMARY KEY AUTO_INCREMENT ,
stu_id INT NOT NULL,
name VARCHAR(20) NOT NULL
);
insert into example6 values (1,002,'黎明');
insert into example6 values (2,003,'黎明2');
select * from example6;
执行过程如下所示:
mysql> CREATE TABLE example6 (
-> id INT PRIMARY KEY AUTO_INCREMENT ,
-> stu_id INT NOT NULL,
-> name VARCHAR(20) NOT NULL
-> );
Query OK, 0 rows affected (0.03 sec)