Oracle
-
ORA-01403: 데이터가 없습니다Oracle 2021. 8. 18. 18:17
SELECT S.STOCK_QNTTY INTO TOTAL FROM (SELECT * FROM STOCK ORDER BY STOCK_NUM DESC) S WHERE ROWNUM = 1; 해당 구문에서 데이터가 없습니다 오류가 났다. 즉 쿼리문에서 어떤 데이터도 찾을 수 없었다는 오류이다. 쿼리문에서 데이터를 찾을 수 없을 경우의 EXCEPTION을 만들어준다. EXCEPTION WHEN NO_DATA_FOUND THEN WHEN NO_DATA_FOUND THEN 뒤에 해당 오류에 대처할 방안을 적으면 된다. EX) 위의 경우 TOTAL에 넣을 게 없으므로, TOTAL := 0;을 하고 부속처리를 해주었다.
-
excel 데이터를 insert 쿼리로 옮기기Oracle 2021. 8. 18. 14:52
1. 엑셀 열에 맞춰 데이터를 입력한다. 2. 옆의 셀에 ="INSERT INTO TABLE VALUES("&A2&", "&B2&", "&C2&", "&D2&", '"&E2&"', '"&F2&"', '"&G2&"');" 수식을 붙인다. TABLE 이름에 해당 테이블 이름을 넣고 열의 숫자대로 위의 수식을 수정하면 된다. 만일 문자열이면 ''이 포함된 수식을 쓰고, 숫자라면 ''가 없는 수식을 쓰면 된다. 3. 해당 셀을 잡고 밑까지 드래그해 복사한다. 4. 다른 입력 창을 띄워 붙여넣고, 해당 쿼리들을 전부 긁어 사용한다.
-
ORA-04091: 테이블 **가 변화하고 있어 트리거/함수가 이를 볼 수 없습니다.Oracle 2021. 8. 9. 13:43
ERR MESSAGE : ORA-04091: 테이블 SCOTT.EMP가 변화하고 있어서 트리거/함수가 이를 볼 수 없습니다 ORA-06512: "SCOTT.SUM_TRIGGER", 줄 5에서 ORA-04088: 트리거 'SCOTT.SUM_TRIGGER'의 수행시 오류 update문이 담긴 cursor를 실행하려고 하니 해당 오류가 발생했다. 잘 살펴보니 update를 할 때, 실행되도록 만들었던 sum_trigger가 실행되었나보다. drop trigger sum_trigger; drop trigger 문으로 해당 트리거를 삭제한 후 실행해보니 잘 update 된다. 혹은 after를 before로 바꿔보라.