커서

2009-09-01 5 views
0

안녕하세요 우리는 스크립트 다음 실행하려고하는 오류주고 우리 있습니다커서

ERROR at line 1: 
ORA-20000: Unknown Exception Raised: -933 ORA-00933: SQL command not properly 
ended 
ORA-06512: at line 23 

DECLARE 
     l_cursor INTEGER; 
     l_output VARCHAR2(20); 
     l_rows INTEGER; 
     l_sql VARCHAR2(1000); 
     BEGIN 
     l_cursor := DBMS_SQL.OPEN_CURSOR; 
     l_sql := 'SELECT wk_units1 FROM cnt_sls_dm.fct_sales.summary UNION SELECT wk_units2 FROM cnt_sls_dm.fct_sales.summary'; 
     DBMS_SQL.PARSE(l_cursor, l_sql, DBMS_SQL.NATIVE); 
     DBMS_SQL.DEFINE_COLUMN_CHAR(l_cursor, 1, l_output, 20); 
     l_rows := DBMS_SQL.EXECUTE(l_cursor); 
     loop 
      if DBMS_SQL.FETCH_ROWS(l_cursor) = 0 then 
      exit; 
      end if; 
      DBMS_SQL.COLUMN_VALUE_CHAR(l_cursor, 1, l_output); 
      DBMS_OUTPUT.PUT_LINE('Output Text '||l_output); 
     end loop; 
     DBMS_SQL.CLOSE_CURSOR(l_cursor); 
     EXCEPTION 
     when others then 
      DBMS_SQL.CLOSE_CURSOR(l_cursor); 
      raise_application_error(-20000, 'Unknown Exception Raised: '||sqlcode||' '||sqlerrm); 
     END; 

답변

1

이 무엇으로 오류를 얻기?

cnt_sls_dm.fct_sales.summary 

유효한 테이블 선언이 아닙니다.

+0

thnx 그것은 cnt_sls_dm.fct_sales_summary입니다. – Irveen

0

동적 SQL 문에서 오류가 발생하면 실제 SQL 문을 출력하고 SQLplus에서 시도하는 것이 좋습니다.