mysql_mysql执行insert into时插入自增字段不输入所有列的办法

本文使用数据库为:Mysql

当我们想使用insert into为一个表的所有字段插入一条数据时,我们可以这样写sql语句

insert into table1 values(‘field’, ‘field2’, ‘field3’);

但是假如第一列的字段是一个自增字段,如下这样就不行了

insert into table1 values(1, ‘field’, ‘field2’, ‘field3’);

第一列的值1,如果已存在值为1的记录,则会报主键已存在的错误,但是如果我们不为第一列赋值的话,如下这样

insert into table1 values(‘field’, ‘field2’, ‘field3’);

又会报列表不匹配的错误,我们可以选择在sql语句中列出所有的列名的办法,如下:

insert into table1 names(field1, field2, field3) values(‘field’, ‘field2’, ‘field3’);

但是对于字段特别多表就很麻烦了

其实对于自增字段我们可以给他传入一个null,这样即不会执行sql语句错误,也可以达到插入新的id的效果,如下:

MySQL

insert into table1 values(null, 'field', 'field2', 'field3');

1

insert into table1 values(null,'field','field2','field3');

————————————————
版权声明:本文为CSDN博主「数羊俱乐部」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_32135505/article/details/113137382

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐