问题描述
static save(habit){
return db.execute(
'INSERT INTO habits (name,repeatVal,notification,color,question,id) VALUES (?,?,?)',[habit.name,habit.repeatVal,habit.notification,habit.color,habit.question,habit.id]
);
}
我想做以下 sql 事务而不是这个 sql 语句(这包括现在的虚拟数据):
START TRANSACTION;
SELECT @habitId:=MAX(habits.habitId)+1 FROM habits;
INSERT INTO habits(habits.habitId,habits.name,habits.repeatVal,habits.notification,habits.color,habits.question,habits.id) VALUES(@habitId,'MysqL test',1,'#786578','backend hello world',14);
INSERT INTO habit_status(habit_status.habitId,habit_status.date,habit_status.status) VALUES(@habitId,"2021-04-01",0),(@habitId,0);
COMMIT;
执行此操作的正确语法是什么?
解决方法
几个选项:
-
尝试搜索之前是否有人问过:https://stackoverflow.com/search?q=javascript+include+transaction+
-
尝试编写一个可以完成这项工作的 stored procedure。
您尝试了上述哪些选项?