ORA-00933: команда SQL не закончилась с вставкой всех - PullRequest
1 голос
/ 14 октября 2019

Не могу найти никаких проблем:

INSERT ALL
   INTO DEPT_PART PARTITION(part1) (EMPNO, ENAME, SAL, DEPTNO) 
   SELECT EMPNO,ENAME,SAL,DEPTNO FROM emp WHERE DEPTNO=10

   INTO DEPT_PART PARTITION(part2) (EMPNO, ENAME, SAL, DEPTNO) 
   SELECT EMPNO,ENAME,SAL,DEPTNO FROM emp WHERE DEPTNO=20

   INTO DEPT_PART PARTITION(part3) (EMPNO, ENAME, SAL, DEPTNO) 
   SELECT EMPNO,ENAME,SAL,DEPTNO FROM emp WHERE DEPTNO=30

SELECT * FROM DUAL;

1 Ответ

1 голос
/ 14 октября 2019

Вам нужно попробовать INSERT FIRST, как показано ниже:

INSERT FIRST
   WHEN DEPTNO = 10 THEN
   INTO DEPT_PART PARTITION(part1) (EMPNO, ENAME, SAL, DEPTNO) 
   WHEN DEPTNO = 20 THEN
   INTO DEPT_PART PARTITION(part2) (EMPNO, ENAME, SAL, DEPTNO) 
   WHEN DEPTNO = 30 THEN
   INTO DEPT_PART PARTITION(part3) (EMPNO, ENAME, SAL, DEPTNO) 
SELECT EMPNO,ENAME,SAL,DEPTNO FROM emp WHERE DEPTNO IN (10,20,30)

Ура !!

...