[PL/SQL] Oracle Stored Procedure的問題
各位好
小弟有三支寫好的stored porcedure
分別是
DROP_AND_CREATE_TABLE(); --刪除並重建Table
INSERT_EXPENSE(Mon); --新增資料到Expense Table
INSERT_SALES(Mon); --新增資料到Sales Table
原先的構想是
再寫一支stored procedure把這三個兜成一支....XDD
步驟就是先執行把原有的Table drop後,再Create,然後再新增資料
原始程式如下:
create or replace PROCEDURE UPDATE_DATA
IS
BEGIN
DROP_AND_CREATE_DATA_TABLE();
FOR Mon IN 1..12 LOOP
INSERT_EXPENSE(Mon);
INSERT_SALES(Mon);
END LOOP;
END UPDATE_DATA;
但是事情並不像憨人我想的那麼簡單....囧rz
執行時的錯誤訊息如下:
ORA-04068: 套裝程式 的現行狀態已被捨棄
ORA-04065: 未執行, 更改或刪除 stored procedure "ODS.INSERT_EXPENSE"
ORA-06508: PL/SQL: 找不到正在呼叫的程式單元: "ODS.INSERT_EXPENSE"
ORA-06512: 在 "ODS.UPDATE_DATA", line 6
ORA-06512: 在 line 2
但是程式改成只刪除Table可以成功
create or replace PROCEDURE UPDATE_DATA
IS
BEGIN
DROP_AND_CREATE_DATA_TABLE();
END UPDATE_DATA;
或是只新增資料也可以成功
create or replace PROCEDURE UPDATE_DATA
IS
BEGIN
FOR Mon IN 1..12 LOOP
INSERT_EXPENSE(Mon);
INSERT_SALES(Mon);
END LOOP;
END UPDATE_DATA;
但是請問諸位要怎樣改寫才能一起執行呢.....>"<
謝謝<(_ _)>
--
親愛的朋友
你今天過的如何呢??
有沒有開開心心快快樂樂的阿
無論發生什麼事希望你每天都能笑的很開心喔
笑一個吧
^__________________________________________________^
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 221.169.7.130
推
11/10 23:44, , 1F
11/10 23:44, 1F
→
11/11 08:06, , 2F
11/11 08:06, 2F
推
11/11 12:04, , 3F
11/11 12:04, 3F
討論串 (同標題文章)
完整討論串 (本文為第 1 之 2 篇):
Database 近期熱門文章
PTT數位生活區 即時熱門文章