select 문에서 얻은 숫자 배열로 테이블을 만드는 스크립트를 실행해야합니다. 여기 DB2의 배열에서 테이블 만들기
나는 그러나 그것은 내가 처음 절차하지만하셨습니까 '없이 그것을 시도CREATE OR REPLACE PROCEDURE proc1()
IS
BEGIN
CREATE TABLE TEMP_YEAR
( YEAR_COLUMN integer
);
INSERT INTO temp_year
(year_column)
(
select extract(year from datum) from datetest
);
FOR vl AS
c1 cursor for
SELECT year_column FROM temp_year
DO
EXEC SQL execute immediate 'create table YEAR_' || year_column
|| ' (year integer, name varchar2(50));
END FOR;
drop table temp_year;
END;
/
의 DB2 V9.7에서 작동하지 않는 몇 가지 이유 정상 PL SQL 작동하지 않습니다, 지금까지 무엇을 가지고 있습니다 어느 쪽이든을 작동 시키면 ....
두 번째 줄은 아마하지 "입니다" "로"라고합니다. 또한, "작동하지 않는다"는 용어는 너무 모호합니다. 오류가 있거나 원하지 않는 결과가 있습니까? –
여러 오류가 발생했습니다. 첫 번째는 다음과 같습니다 (독일어 번역) SQLCODE : -104 SQLSTATE : 42601 표 TEMP_YEAR (\t YEAR_COLUMN 정수 )는 SQL 문이 유효하지 DB21034E을 만듭니다. "ROCEDURE PROC1() AS"의 SQL0104N이 예기치 않은 토큰 "BEGIN"다음에옵니다. 가능한 토큰은 ":"입니다. LINE NUMBER = 3. SQLSTATE = 42601 – Thevagabond
이 오류는 BEGIN에 있습니다. 수동으로 할당 된 변수의 연도 값을 사용하여보다 간단한 저장 프로 시저로 시작하십시오. – AngocA