阿摩線上測驗 登入

申論題資訊

試卷:108年 - 合作金庫商業銀行 108 年第二次新進人員 開放系統第二類程式設計人員 專業科目:程式設計(以 APP、Angular JS/TS、SQL 語言為主)、系統分析、 資料結構及資料庫應用#78869
科目:程式設計(以 JAVA、SQL 語言為主)、系統分析、資料結構及資料庫應用
年份:108年
排序:2

題組內容

第二題: SQL 是用來存取關聯式資料庫系統的結構化查詢語言,它可用來操作及管理資料庫的程 式敘述,請分別說明以下內容: (一)在 SQL 資料交易過程中,其 SQL 程式有下列資料交易敘述,請說明它們的功能? 【8 分】

申論題內容

(b). ROLLBACK

詳解 (共 1 筆)

詳解 提供者:hchungw
BEGIN TRANSACTION;
-- 插入一條記錄
INSERT INTO orders (order_id, order_date, customer_id)
VALUES (1, '2024-06-18', 'C001');
-- 更新庫存
UPDATE products
SET stock = stock - 10
WHERE product_id = 'P001';
-- 假設此處發生某些錯誤,例如庫存不足
IF (SELECT stock FROM products WHERE product_id = 'P001') < 0 THEN
    ROLLBACK;
    -- 結束交易並報錯
    PRINT '訂單失敗,庫存不足';
    RETURN;
END IF;
-- 如果沒有錯誤,提交交易
COMMIT;
在這個例子中,如果庫存不足,則執行 ROLLBACK 撤銷之前的所有操作,確保庫存和訂單數據的一致性。