sql手动自增id

有时候在运维处理数据的时候,需要给某张表插入新的记录,那么需要知道最新插入数据的id,并在最新id的基础上加上id增长步长获取新的id,这个过程往往需要现将max出来加1,再手动补充到sql语句中,很麻烦,而且数据多的时候容易出错。有什么方式可以解决这弊端,其实方法很简单,只需引入一个临时变量即可轻松解决。

1、查询表最大id

sql 复制代码
SET @max_id = (SELECT  MAX(id)  FROM  t_change_record) ;

2、赋值新的id

有时候表结构定义的id使用的是char,那么需要现将字符转成数字再做加法

sql 复制代码
SET @new_id = ( SELECT CONVERT(@max_id,SIGNED)) +1;

3、插入数据

sql 复制代码
INSERT INTO `t_change_record` (`id`, `order_id`, `change_type`, `change_time`, `remarks`, `operator_name`, `create_time`, `update_time`) VALUES (  @new_id, 'xxx', 6,  now(), '核销', 'admin',now(), now());
相关推荐
夜雪一千10 分钟前
MySQL 触发器有哪些应用场景?从入门场景到避坑实战
数据库·mysql
lusklusklusk25 分钟前
Oracle数据库基础之6_外部表临时表分区表_物化视图_约束的介绍
数据库·oracle
智商偏低41 分钟前
【无标题】
服务器·数据库·oracle
IT毕设梦工厂1 小时前
计算机毕业设计选题推荐:基于大数据的培训机构信息分析与可视化|毕业设计选题|计算机毕设|选题推荐|毕设指导|项目定制|源码|高质量项目
大数据·hadoop·mysql·数据挖掘·数据分析·spark·课程设计
雨落在了我的手上1 小时前
MySQL数据库基础(1):MySQL的安装-Windows
数据库·mysql
涉密IT资质笔记1 小时前
涉密人员脱密期管理规范:期限分级模型、就业限制边界与违规认定标准
java·服务器·前端·网络·数据库
honsor1 小时前
PoE温湿度传感器:一根网线供电+通信,即插即用,机房/配电室/仓库温湿度监测首选
运维·服务器·网络·数据库·人工智能·安全
minebmw72 小时前
第 3 讲 日志系统:一条 SQL 更新语句是如何执行的---redo log、binlog 与两阶段提交
mysql
XM_jhxx2 小时前
简会AI图纸识别系统功能上新:模板、公差、量具个性化配置上线!
数据库·人工智能·软件工程
java资料站2 小时前
十、向量数据库
数据库