SQL

SQL

[SQL] 정규화의 개념

정규화란? 관계형 데이터베이스의 설계에서 중복을 최소화하게 데이터를 구조화하는 프로세스를 정규화(Normalization)라고 한다. 데이터를 정규화하지 않으면 쿼리의 성능이 저하되고, 삽입이상, 갱신이상, 삭제이상 등의 이상현상이 발생한다. 삽입이상은, 원치 않은 데이터가 삽입되는것, 갱신이상은 원치 않게 일부 데이터만 갱신되는 것, 삭제이상은 원치 않는 데이터가 삭제되는 것 을 말한다. 정규화의 종류에는 1NF(1정규화), 2NF, 3NF, BCNF(보이스-코드 정규화), 4NF, 5NF, (6NF)가 있다. 비공식적으로 3NF면 정규화되었다고 한다. 반대로 테이블을 합쳐서 중복되게 하는 것을 반정규화라고 한다. 성능상의 이유로 반정규화를 진행하기도 한다. 1NF 1. 도메인(각 칸의 값)이 원자값(..

SQL

[SQL] PL/SQL declare, begin, end 알아보기, mybatis 쿼리 여러개 한꺼번에 실행하기

mybatis에서 쿼리 여러개 한꺼번에 실행하는 방법은 아래에 있습니다. 그래도 개념을 잡고 가는 것을 추천합니다. PL/SQL Oracle’s Procedural Language extension to SQL의 약자 SQL과 절차적 언어의 특징을 결합한 것, pascal 에서 파생되었다. 조건문, 반복문 등을 지원 오라클에 내장된 Procedural Language 이다. 프로시저 다른 언어의 함수와 비슷하다. 그러나 특정한 로직을 처리하기만 하고 결과 값을 반환하지 않는다. 자주 사용하는 로직을 프로시저로 만들고 필요할때마다 호출할 수 있다. 여러가지 쿼리를 한번에 처리할 때, 또는 복잡한 처리를 할 때 사용할 수 있다. PL/SQL을 통해 프로시저를 만들 수 있다. PL/SQL을 이용하여 프로시저 ..

우주유령
'SQL' 카테고리의 글 목록