ORACLE 저장 프로시저 호출 사용자 정의 함수
1591 단어 Oacle
V_SQL:='CREATE TABLE BI_ZJ_ZJGJ(
ZHZBH VARCHAR2(20),
ZHZMC VARCHAR2(50),
DWBH VARCHAR2(20),
DWMC VARCHAR2(100),
ZHNM VARCHAR2(50),
ZHMC VARCHAR2(200),
HBZJ NUMBER(20,8),
YGJZJ NUMBER(20,8),
GJL NUMBER(20,8)
)';
SELECT COUNT(1) INTO V_FLAG FROM USER_TABLES WHERE TABLE_NAME='BI_ZJ_ZJGJ';
IF V_FLAG=0 THEN
EXECUTE IMMEDIATE V_SQL;
ELSE
EXECUTE IMMEDIATE 'DROP TABLE BI_ZJ_ZJGJ';
EXECUTE IMMEDIATE V_SQL;
END IF;
저장 과정 에서 여러 장의 임시 표를 사용 할 때 이 코드 를 여러 번 반복 해서 붙 여야 합 니 다. 그런데 왜 임시 표를 만 드 는 문 구 를 독립 적 으로 함수 로 만 들 지 않 고 저장 과정 에서 호출 합 니까?
그래서 BI 를 만 듭 니 다.TEMP_TAB 의 함수, 건 표 문 V 수신SQL 과 표 명 VNAME, 임시 테이블 생 성 에 성 공 했 음 을 나타 내 는 불 값 을 되 돌려 줍 니 다.
CREATE OR REPLACE FUNCTION BI_TEMP_TAB(V_SQL VARCHAR2,V_NAME VARCHAR2)
RETURN BOOLEAN
AS
V_FLAG VARCHAR(10);
V_OK BOOLEAN;
BEGIN
SELECT COUNT(1) INTO V_FLAG FROM USER_TABLES WHERE TABLE_NAME=V_NAME;
V_OK:=True;
IF V_FLAG=0 THEN
EXECUTE IMMEDIATE V_SQL;
RETURN V_OK;
ELSE
EXECUTE IMMEDIATE 'DROP TABLE '||V_NAME;
EXECUTE IMMEDIATE V_SQL;
RETURN V_OK;
END IF;
END;
저장 과정 에서 임시 표를 만들어 야 할 때 이 함 수 를 직접 호출 합 니 다.
4. 567913. 이렇게 하면 임시 표 의 생 성 과정 을 간소화 했다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
자바 작업 은 Clob 또는 NClob 데이터 형식의 저장 프로 세 스 인 스 턴 스 를 포함 합 니 다.텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.