본문 바로가기
728x90

oracle6

[오라클-오류] ORA-01756: 사용자 정의 데이터 유형이 잘못되었습니다. [Oracle-오류] ORA-01756: 사용자 정의 데이터 유형이 잘못되었습니다. ■ 원인 ORA-01756 오류가 발생하는 주요 원인은 다음과 같습니다: ▶ 너무 긴 식별자: 데이터베이스 객체의 이름이 Oracle의 식별자 제한을 초과하면 오류가 발생합니다. Oracle에서는 객체 이름에 최대 길이 제한이 있으며, 이를 초과할 경우 ORA-01756 오류가 발생합니다. ▶ 잘못된 식별자 형식: 식별자는 특정 형식을 따라야 합니다. 예를 들어, 대소문자, 숫자, 밑줄(_)로 구성되어야 하며, 특정 규칙을 따라야 합니다. 잘못된 식별자 형식을 사용할 경우 ORA-01756 오류가 발생할 수 있습니다. ■ 예제 아래는 ORA-01756 오류가 발생할 수 있는 몇 가지 예제입니다: ▶ 예제 1: 너무 긴 식.. 2023. 7. 15.
[오라클-오류] ORA-02291: 무결성 제약 조건(FOREIGN KEY) 위반 [Oracle-오류] ORA-02291: 무결성 제약 조건(FOREIGN KEY) 위반 ■ 원인 ORA-02291 오류가 발생하는 주요 원인은 다음과 같습니다: ▶ 외래 키 값 불일치: 자식 테이블에 삽입하거나 업데이트하려는 외래 키 값이 부모 테이블의 기본 키 값과 일치하지 않을 때 오류가 발생합니다. ▶ 부모 테이블에서 데이터 삭제: 부모 테이블에서 기본 키 값을 삭제하면, 해당 값과 관련된 자식 테이블의 외래 키 값이 무효화되므로 ORA-02291 오류가 발생할 수 있습니다. ■ 예제 아래는 ORA-02291 오류가 발생할 수 있는 몇 가지 예제입니다: ▶ 예제 1: 외래 키 값 불일치 CREATE TABLE employees ( employee_id NUMBER PRIMARY KEY, employ.. 2023. 7. 15.
[오라클-오류] ORA-01400: 삽입할 값이 없습니다. [Oracle-오류] ORA-01400: 삽입할 값이 없습니다. ■ 원인 ORA-01400 오류가 발생하는 주요 원인은 다음과 같습니다: ▶ NOT NULL 제약 조건: 테이블의 열에 NOT NULL 제약 조건이 설정되어 있을 때, 해당 열에 값을 삽입하지 않았을 때 오류가 발생합니다. ▶ DEFAULT 값 누락: 테이블의 열에 DEFAULT 값이 지정되어 있을 때, 값을 명시적으로 제공하지 않았을 경우에도 오류가 발생할 수 있습니다. ▶ 필수 열 누락: 테이블의 필수 열에 값을 제공하지 않았을 때에도 ORA-01400 오류가 발생합니다. ■ 예제 아래는 ORA-01400 오류가 발생할 수 있는 몇 가지 예제입니다: ▶ 예제 1: NOT NULL 제약 조건 INSERT INTO employees (emp.. 2023. 7. 15.
[Oracle-오류] ORA-00933: SQL 명령어가 끝났지만 예상하지 못한 토큰이 나타났습니다. [Oracle-오류] ORA-00933: SQL 명령어가 끝났지만 예상하지 못한 토큰이 나타났습니다. ■ 원인 ORA-00933 오류가 발생하는 주요 원인은 다음과 같습니다: ▶ SQL 문법 오류: SQL 문법을 정확하게 따르지 않거나, 쿼리의 요소를 잘못 사용한 경우에 오류가 발생할 수 있습니다. ▶ 누락된 토큰: 쿼리에서 필요한 요소 또는 토큰이 누락되었을 때 오류가 발생할 수 있습니다. 예를 들어, SELECT 문에서 FROM 절이 누락되었을 경우 ORA-00933 오류가 발생합니다. ▶ 잘못된 쿼리 구조: 쿼리의 구조가 잘못되어 SQL 문법에 어긋나는 경우 오류가 발생할 수 있습니다. ■ 예제 아래는 ORA-00933 오류가 발생할 수 있는 몇 가지 예제입니다: ▶ 예제 1: FROM 절 누락 S.. 2023. 7. 15.
[오라클-팁] 비정형 데이터 컬럼에서 실명번호 찾기 [Oracle-TIP] 비정형 데이터 컬럼에서 실명번호 찾기 개인정보 보호법에 따라 DB원장의 실명번호는 모두 암호화 되어 저장되고 있습니다. 대외전문관리 테이블의 경우, 전문전체를 통으로 보관하는 비정형 컬럼도 존재하는데, 보통 실명번호 부분만 암호화해서 저장하고 대외에 송신시에는 복호화해서 전송합니다. 하지만 금융권에서 운영업무를 하다보면, 통합단말의 비고란 같은 항목에 텔러가 관리차원에서 실명번호를 기입히는 경우, 테이블에 암호화되지 않고 저장되는 경우가 있습니다. 이런 경우, 해당 레코드들을 찾아서 강제로 암호화 작업을 수행해 줘야하는데.. 비정형 데이터 컬럼에서 실명번호를 찾기 위해서는 정규 표현식을 활용하는 방법이 일반적입니다. 정규표현식은 문자열에서 패턴을 찾거나 매칭시킬 때 사용하는 강력한.. 2023. 7. 10.
[오류] ORA-20000: ORU-10027: buffer overflow, limit of 20000 bytes ORA-06512: "SYS.DBMS_OUTPUT" 당행의 코어뱅킹은 정책상 오라클 프로시저를 제한하고 있으나, 오래전 위성시스템에서 프로시저를 돌릴때, 발생했던 오류 이다. ■ 문제발생 : ORA-20000: ORU-10027: buffer overflow, limit of 20000 bytes ORA-06512: "SYS.DBMS_OUTPUT" ■ 문제원인 : 이 구문은 오라클은 해당 처리 내용을 화면이나 버퍼로 출력하는데, 너무 많은 내용을 출력하다 보면 한정된 메모리 사용량을 벗어나서 오버 플로우를 일으키는 것이다. ■ 문제해결 : 버퍼의 메모리 사이즈를 늘려주는 명령문을 사용하거나 프로시저 내에 DBMS_OUTPUT.PUT_LINE 명령문을 삭제하는 것이다. □ 해결예시 DECLARE I_STD_YM VARCHAR2(200); I_REWD_GB .. 2017. 2. 2.
728x90