mysql中 auto_increment 怎样实现自增??

每只蚂蚁都有 2015-08-13 10:34:20
/*先建一个example6 表, 定义ID实现自增*/

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,'黎明');
为什么?具体应该怎么弄才能实现自增,求指教!给出最简单的代码
...全文
274 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
九月茅 2015-09-10
  • 打赏
  • 举报
回复

范列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)

mysql> 
mysql>  insert into example6 values (1,002,'黎明');
Query OK, 1 row affected (0.02 sec)

mysql> select * from example6;
+----+--------+--------+
| id | stu_id | name   |
+----+--------+--------+
|  1 |      2 | 黎明   |
+----+--------+--------+
1 row in set (0.00 sec)

mysql>  insert into example6 values (2,003,'黎明2');
Query OK, 1 row affected (0.01 sec)

mysql> select * from example6;
+----+--------+---------+
| id | stu_id | name    |
+----+--------+---------+
|  1 |      2 | 黎明    |
|  2 |      3 | 黎明2   |
+----+--------+---------+
2 rows in set (0.00 sec)

mysql> 
九月茅 2015-09-10
  • 打赏
  • 举报
回复
可以的,楼主的错误信息是?
rick-he 2015-09-06
  • 打赏
  • 举报
回复
上面的都不行,那你应该还有其他的索引,导致相同的不能插入
Ray_Zhang 2015-09-06
  • 打赏
  • 举报
回复
SHOW TABLE STATUS LIKE '表名'; 看一下是不是auto_increment的值有问题
码无边 2015-08-31
  • 打赏
  • 举报
回复
贴出你的表结构看下
pony520 2015-08-30
  • 打赏
  • 举报
回复
自增字段不用管的,系统自己添加的
道玄希言 2015-08-14
  • 打赏
  • 举报
回复
引用 6 楼 MeiZhiMaYiDuYou 的回复:
[quote=引用 4 楼 yupeigu 的回复:] 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,'黎明');
也不行啊![/quote] 自增字段的ID不要写出来啊. insert into example6(stu_id, name) values (002,'黎明'); insert into 插入, 列出的表字段 跟 values 后的值是一一对应的. 如果有自增字段, 自增字段不用你去管他, 这时不能简写, 需要将除掉自增字段外的其他你需要插入的字段名都罗列出来 values 值也需要跟你列出的字段名对应
shane_____ 2015-08-14
  • 打赏
  • 举报
回复
把错误信息贴出来啊!
rsc110 2015-08-14
  • 打赏
  • 举报
回复
insert into example6(stu_id,name) values (002,'黎明'); 这些问题在搜索引擎上都很容易找到的诶,为何要提问呢?
ACMAIN_CHM 2015-08-14
  • 打赏
  • 举报
回复
insert into example6 values (null,002,'黎明')
每只蚂蚁都有 2015-08-14
  • 打赏
  • 举报
回复
引用 4 楼 yupeigu 的回复:
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,'黎明');
也不行啊!
每只蚂蚁都有 2015-08-14
  • 打赏
  • 举报
回复
引用 3 楼 zhu19774279 的回复:
1楼+1 自增字段必须要用 insert into tb(xxx,xxx) values(xxx,xxx)这种格式,不能偷懒不写字段
试过了,不行啊
LongRui888 2015-08-14
  • 打赏
  • 举报
回复
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,'黎明');
zhu19774279 2015-08-14
  • 打赏
  • 举报
回复
1楼+1 自增字段必须要用 insert into tb(xxx,xxx) values(xxx,xxx)这种格式,不能偷懒不写字段
迷途的书童 2015-08-14
  • 打赏
  • 举报
回复
自增值不用插入,它会自动增加!
内容概要:本文详细介绍了 MySQL AUTO_INCREMENT 属性的使用方法,这是一种用于模拟序列行为的方式。它允许在表创建自增字段,通常作为主键,确保每行数据都有唯一的标识符。文提供了创建带有自增字段的表的示例,解释了插入数据时如何自动分配自增值,并介绍了如何使用 LAST_INSERT_ID() 函数获取最近插入行的自增值。还说明了如何查看表的当前自增值以及注意事项,如删除行后自增值不会被重用。此外,文章展示了在 PERL 和 PHP 获取自增值的方法,并讨论了重置序列和设置序列开始值的具体操作。; 适合人群:对 MySQL 数据库有一定了解的数据库管理员或开发人员,尤其是那些需要理解和使用自增字段进行数据管理的人群。; 使用场景及目标:① 学习如何在 MySQL 创建具有自增字段的数据表;② 掌握插入数据时不指定自增字段值的情况下,数据库如何自动分配唯一标识符;③ 了解如何在不同编程语言获取最近插入行的自增值;④ 掌握重置序列和设置序列开始值的方法。; 其他说明:AUTO_INCREMENT 属性只能应用于整数类型的字段,并且在实际应用应谨慎处理自增字段的重置,以免造成数据混乱。同时,在设置自增值时要注意避免唯一性冲突。

56,940

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧