Bagi yang mau buat aplikasi dengan menggunakan stored procedure MySQL harus berhati-hati dengan nested stored procedure.
Untuk nested stored procedure dengan fitur transaction tidak bisa menggunakan lebih dari satu Blok transaksi START TRANSACTION ... COMMIT/ROLLBACK. untuk itu cukup gunakan satu blok perintah START TRANSACTION ... COMMIT/ROLLBACK pada stored procedure utama.
Contoh:
CREATE PROCEDURE ProsedurMain()
BEGIN
START TRANSACTION
-- statement lain
-- ...
call ProsedurChild();
-- ...
-- statement lain
COMMIT;
END;
CREATE PROCEDURE ProsedurChild()
BEGIN
START TRANSACTION -- ==> statemet ini tidak perlu di tambahkan
-- statement lain
-- BLAH-BLAH
COMMIT; -- ==> statemet ini tidak perlu di tambahkan
END;
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar