도저히 알수 없어서 이곳 저곳 문의를 합니다. 무식이 죄라서 -_-;;
CREATE OR REPLACE PROCEDURE sp_Cus_Update
IS
n_count number(15) := 0 ;
BEGIN
FOR PROC1 IN (
select 3 as CustomerClassCode,
trim(TRADENAME) as CustomerName,
trim(TRADENAME) as CustomerName1,
trim(TRADENAME) as ShortName,
trim(OWNER) as President
from Btc_Trade
where MAKER_GB = '0'
and mos_gb = '1'
and length(trim(LICENSE)) = 12
Order by tradeName asc )
LOOP
n_count := n_count + 1;
BEGIN
Insert into Customer
( CustomerCode, CustomerClassCode, CustomerName,
CustomerName1, ShortName, President)
values
( n_count, PROC1.CustomerClassCode, PROC1.CustomerName,
PROC1.CustomerName1, PROC1.ShortName, PROC1.President ) ;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('SQL CODE :' || TO_CHAR(SQLCODE));
DBMS_OUTPUT.PUT_LINE(SQLERRM);
ROLLBACK;
RETURN ;
END;
END LOOP ;
DBMS_OUTPUT.PUT_LINE('처리한 건수는 ' || TO_CHAR(n_count, '999,999,990')|| ' 입니다.');
END;
---------------------------------------------------------------------------------------------
오라클은 이렇게 해서 사용했었는데.. ms-sql은 어떻게 사용해야 하는지 알고 싶네요..
현재 ms-sql에서 cursor사용하여 fetch 하는 방법은 너무 느려서.. 오라클처럼 위와 같은 방법으로 해보려고 합니다. |