node.js mysql 插入后返回当前id_nodejs+mysql 插入一条记录时获取自动生成的id

在开发学生申报项目后端接口时,通过Node.js和MySQL进行数据插入,需要获取数据库自动生成的主键。通过使用`rows.insertId`,可以在插入操作完成后直接获取到新生成的ID,避免了额外的查询操作。该方法在事务处理中尤其适用,可以确保数据一致性。
摘要由CSDN通过智能技术生成

最近在写学生申报项目的后端接口时发现需要获取数据库自动生成的主键,因为要先将项目信息插入到project表,得到生成的项目ID,再将项目ID和指导老师ID插入到project_member表

一开始想在插入项目之后,用SELECT LAST_INSERT_ID() 获取生成的ID,后来发现,在插入操作完成后的返回结果里就带有自动生成的ID。可用rows.insertId获取

代码:

//利用事务对project表和project_member表进行插入

conn.beginTransaction(function(err){

if(err){

sendData(req,res,next,conn,err);

}else{//在project表插入项目信息

conn.query('INSERT INTO project (project_category_id,project_status,project_creator_id,project_name,project_start,' +

'project_end,project_source,project_aid,project_background,project_describe,project_innovation,' +

'project_plan,project_prospect,project_budget,project_resourcerequired)' +

'VALUES ('+category+',0,'+userId+',"'+name+'","'+startTime+'&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值