Q&A

  • TQuery 를 사용하여 오라클 8i 프로시져 호출방법은??
안녕하세요.

TQuery 컴포넌트 또는 TClientDataSet  사용하여 오라클 8i 의 프로시져를 호출해야만 합니다.  
방법이 있는지 알고 싶습니다.


-- 오라클 8i 에서 생성한 프로시져 입니다.
CREATE OR REPLACE PROCEDURE TEST_SP ( P_C001 IN VARCHAR2 ) IS
CNT INTEGER;
BEGIN
  SELECT COUNT(*) INTO CNT FROM 사원코드;
END;


델파이 7 에서 테스트한 것
1)
Query.Sql.text := 'exec sp_test  ''aaa'' ';
Query.open;  ==> 에라 발생 혹시나하고  Query.execsql;  ==> 마찬가지로 에라 발생

2)
Query.Sql.text := 'exec sp_test (''aaa'') ';   ==> 괄호 추가
Query.open;  ==> 에라 발생 혹시나하고  Query.execsql;  ==> 마찬가지로 에라 발생

3)
Query.Sql.text := 'begin sp_test (''aaa'') end ';   ==> 괄호 추가
Query.open;  ==> 에라 발생 혹시나하고  Query.execsql;  ==> 마찬가지로 에라 발생

Query 컴포넌트에서는 프로시져 호출이 안되는건가요??


보통 프로시져 호출시 TStoredProc 컴포넌트를 사용하는데..  이걸 사용하지 않고 Query 를 사용할려고 함..
StoredProc 컴포넌트 를 사용하지 않고 TQuery 컴포넌트를 사용해야 하거든요..
  이유:   ==> TClientDataSet 에서 호출하는 방법을 연계해서 개발 할려고 함
                    (3 Tier 에서 멀티 레코드 사용시 필요함)


  
0  COMMENTS