Stored procedures 具有回滚功能的存储过程修改
我有以下问题,有人能帮我解决吗 “-修改submitor()存储过程以接收第四个参数store_id并使用事务Stored procedures 具有回滚功能的存储过程修改,stored-procedures,rollback,Stored Procedures,Rollback,我有以下问题,有人能帮我解决吗 “-修改submitor()存储过程以接收第四个参数store_id并使用事务 将收到的门店标识分配给创建的订单 插入订单项目和订单行后,验证请求的存储是否有请求的产品和数量的库存,如果没有,则回滚事务并返回订单id-1。” 以下是原始代码: 创建过程提交者(在customerID内、在productID内、在数量内、在外订单ID内) BEGIN DECLARE tp_storeid INT; DECLARE staffid_2 INT;
- 将收到的门店标识分配给创建的订单
- 插入订单项目和订单行后,验证请求的存储是否有请求的产品和数量的库存,如果没有,则回滚事务并返回订单id-1。”
BEGIN
DECLARE tp_storeid INT;
DECLARE staffid_2 INT;
DECLARE OrderID_2 INT;
SELECT sk.store_id
FROM stocks AS sk
INNER JOIN stores AS st
ON sk.store_id = st.store_id
WHERE sk.product_id = productID
ORDER BY sk.quantity DESC
LIMIT 1
INTO tp_storeid;
SELECT staff_id
FROM staffs
WHERE store_id = tp_storeid
LIMIT 1
INTO staffid_2;
SELECT list_price
FROM products
WHERE product_id = productID
LIMIT 1
INTO listPrice;
SELECT MAX(order_id)+1
FROM orders
INTO OrderID_2;
SET orderId = OrderID_2;
INSERT INTO order_items
VALUES (OrderID_2, 1, productID, qty, listPrice,0);
INSERT INTO orders (order_id, customer_id, order_status, order_date, required_date, staff_id, store_id)
VALUES (OrderID_2, customerId, 1, CURDATE(), DATE_ADD(CURDATE(), INTERVAL 1 WEEK), staffid_2, tp_storeid);
END