当前博客:关于SQL的问题

76 次浏览【转载需注明来源】

博客作者:【1888****8888】

个性签名:寒窗苦读十年,一朝凤舞九天

let 增加订单SQL = `INSERT INTO place_order(Order_No,username,phone,state,Number_tasks,price,number,transaction,commission,place_order_time,unfreeze_time,name,picture) VALUES('${Order_No}','${username}','${phone}',${state},${Number_tasks},${price},${number},${transaction},${commission},NOW(),NOW(),'${name}','${picture}')`;

 

有没有方法让它返回插入数据的ID

 

let ID查询结果 = await electronMysql.query2("SELECT LAST_INSERT_ID()") 这个方法说不可靠

默认排序
Generic placeholder image
Generic placeholder image
已采纳
快码FOF编程 Time: 2024-02-19 19:14:49

可以考虑使用事务操作,事务操作后再查询,就可以获取到插入的数据。

如果你是mysql数据库,则可以:

mysql客户端.事务执行SQL语句_同步([{sql:"执行的插入SQL语句",values: []}])

然后执行完事务后,再使用查询命令查询插入的数据,同时建议插入的数据行有一个特定的字段,这个字段是一个唯一的数值,方便作为插入后进行查询时的条件

例如:

局部变量 事务状态 = 同步 mysql客户端.事务执行SQL语句_同步([{sql:"insert into 某张表(xxx,某个唯一随机数字段) values('1234','111222333')",values: []}])
局部变量 插入状态 = 同步 mysql客户端.查询SQL语句_同步("select * from 某张表 where 某个唯一随机数字段='111222333'")

 

此时就可以以这个插入状态获取插入的ID信息

Generic placeholder image
1888****8888 回复 1楼 快码FOF编程 Time: 2024-02-19 20:20:01

感谢老板 事务会直接返回ID 


关于SQL的问题