欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

mysql 同時插入兩張表

傅智翔2年前16瀏覽0評論

MySQL是一種流行的關系數據庫管理系統,具有廣泛的應用,本文將介紹如何同時插入兩張表。

假設我們有兩個表,一個是商品表,一個是訂單表。當有新的訂單時,我們需要在訂單表中插入一條訂單記錄,并在商品表中減少相應商品的庫存量。以下是一個MySQL存儲過程,可以實現同時插入這兩張表。

DELIMITER //
CREATE PROCEDURE addNewOrder(
IN orderId INT,
IN productId INT,
IN quantity INT,
IN price DOUBLE,
IN date DATE,
IN customerName VARCHAR(50),
IN address VARCHAR(255)
)
BEGIN
START TRANSACTION;
INSERT INTO orders(order_id, product_id, quantity, price, date, customer_name, address)
VALUES(orderId, productId, quantity, price, date, customerName, address);
UPDATE products
SET stock = stock - quantity
WHERE id = productId;
COMMIT;
END //
DELIMITER ;

在這個存儲過程中,我們使用了START TRANSACTION和COMMIT將多個操作封裝在一個事務中。如果某個操作出現錯誤,整個事務會回滾,保證了數據的完整性。

在調用存儲過程時,只需要傳入所需參數即可:

CALL addNewOrder(1, 2, 3, 10.5, '2020-01-01', '張三', '上海市浦東新區');

通過這個存儲過程,我們可以方便地同時插入兩張表,并進行事務處理,確保數據的一致性。