본문 바로가기
반응형

Database32

Oracle DELETE쿼리와 TRUNCATE차이는? 안녕하세요, 오늘은 Where절 없는 DELETE쿼리와 TRUNCATE차이에 대하여 알아보겠습니다. WHERE 절 없는 DELETE와 TRUNCATE 모두 테이블의 모든 행을 삭제하는 효과를 가지지만 여러 면에서 차이점이 있습니다.   1. 동작 방식특징DELETE (WHERE 절 없음)TRUNCATE명령 방식DML (데이터 조작 언어)DDL (데이터 정의 언어)삭제 방식한 행씩 삭제 (로그 기록 포함)전체 테이블 초기화 (빠르고 효율적)트랜잭션 롤백가능 (트랜잭션 시작 후 롤백 가능)불가능 (DDL이므로 커밋과 동시에 완료)테이블 구조 유지유지 (모든 데이터 삭제 후 빈 테이블)유지 (데이터만 삭제, 구조 및 인덱스는 그대로 유지)외래 키 제약 조건(FK)외래 키 제약 조건을 고려하여 작동외래 키 제약.. 2024. 11. 29.
Oracle 무결성 제약조건 위배되었습니다- 부모 키가 없습니다 안녕하세요, 오늘은 Oracle에서 데이터 insert 및 delete시에 발생하는 무결성 제약조건에 대하여 알아보겠습니다. 삽입시.ORA-02291: 무결성 제약조건(USER_NAME.SYS_C012345)이 위배되었습니다- 부모 키가 없습니다 삭제시.ORA-02292: 무결성 제약조건(USER_NAME.SYS_C012345)이 위배되었습니다- 부모 키가 없습니다 두가지 경우 중 오늘은 삭제시 조치방법에 대하여 알아보겠습니다.데이터베이스에서 외래 키(Foreign Key) 제약 조건이 위반되었을 때 발생합니다.이 오류는 특정 레코드가 삭제되거나 업데이트될 때, 그 레코드에 의존하는 자식 레코드가 있는 경우에 주로 발생합니다. - 원인이 오류의 원인은 보통 다음 중 하나입니다:부모 테이블에 존재하지 않는.. 2024. 11. 28.
[Oracle] Merge문 안녕하세요 오늘은 Oracle의 Merge Into문에 대해서 알아보겠습니다. 흔히 특정 조건에 맞는 A테이블의 데이터를 B테이블로 update 한다거나, 아니면 데이터가 입력됬을때 특정 조건에 맞으면 update 아니면 insert 하는 식으로 구현할 수 있는 SQL입니다. 예제 상황A 테이블: A(id, name, age)B 테이블: B(id, name, age)두 테이블의 id가 공통 키.MERGE INTO BUSING AON (A.id = B.id)WHEN MATCHED THEN UPDATE SET B.name = A.name, B.age = A.ageWHEN NOT MATCHED THEN INSERT (B.id, B.name, B.age) VALUES (.. 2024. 11. 27.
Oracle) 데이터 형식 VARCHAR2 -> CLOB로 변경하기 안녕하세요 오늘은 Oracle에서 데이터 형식을 VARCHAR2 -> CLOB로 변경하는 방법에 대하여 알아보겠습니다. Oracle에서 VARCHAR2형식으로 긴 문자열 데이터를 저장할경우 다음과 같이 선언하게됩니다. ColumnName VARCHAR2(4000) 하지만 이렇게 선언할경우 4000바이트가 넘는 문자열은 저장할 수 없게 되며, 아래와 같은 에러가 발생합니다.ORA-01461 "Long 열에 삽입할때만 Long 값을 바인딩 할 수 있습니다." 이런경우 해당 컬럼의 형식을 CLOB로 변경해줘야합니다. [  CLOB은 최대 4GB까지 저장이 가능합니다. ] 하지만 아래과 같이 VARCHAR2형식인 컬럼을 바로 CLOB형식으로 변경하게되면ALTER TABLE [테이블명] MODIFY COLUMN .. 2024. 11. 26.
Oracle PL/SQL이란? 안뇽하세요 오늘은 Oracle의 PL/SQL에 대하여 정리해보겠습니다. Oracle PL/SQL(Procedural Language/SQL)은 Oracle Database에서 SQL과 함께 사용할 수 있는 프로시저 언어로,SQL의 한계를 보완하고 프로그래밍 로직을 작성할 수 있도록 합니다. PL/SQL의 기본 문법과 주요 구성 요소를 알아보겠습니다. 1. PL/SQL 블록 구조PL/SQL은 크게 익명 블록과 저장 프로시저/함수로 나뉩니다. 모든 PL/SQL 코드는 아래와 같은 블록 구조를 가집니다.DECLARE -- 변수 선언 변수명 데이터타입 [DEFAULT 초기값];BEGIN -- 실행부 NULL; -- 기본 실행문 (아무 작업도 하지 않음)EXCEPTION -- 예외 처리.. 2024. 11. 23.
규칙기반 옵티마이저와 비용기반 옵티마이저의 차이 규칙기반 옵티마이저와 비용기반 옵티마이저의 주요 차이를 설명한 표입니다. 특정 상황에 따라 적절한 옵티마이저를 선택하는 것이 중요합니다. 특성 규칙기반 옵티마이저 비용기반 옵티마이저 목표 명시적인 규칙 또는 휴리스틱을 사용하여 최적화 목표 함수를 최소화하는 방향으로 학습 동작 방식 사전에 정의된 규칙에 따라 변수를 조절하여 최적화 경사 하강법과 같은 최적화 알고리즘을 사용하여 최적화 사용 사례 특정 도메인에 대한 전문 지식이 있는 경우 사용 가능 데이터 기반 문제에 적합한 경우 사용 가능 적합성 간단하거나 구조적인 문제에 대해 유용 복잡하고 많은 데이터를 다루는 데 유용 자동화 및 일반화 특정 규칙에 의존하므로 자동화 및 일반화에 제한될 수 있음 데이터로부터 학습하여 더 일반화된 모델 생성 가능 예시 우.. 2024. 3. 3.
반응형

loading