반응형

1정규형(1NF)의 개념


1. 1정규형

  • 1정규형(1NF, First Normal Form) 은 관계형 데이터베이스 정규화의 첫 단계로, 모든 속성(컬럼)이 원자값(Atomic Value) 을 가져야 하며 반복되는 그룹이 없어야 합니다.

  • 다시 말해, 각 셀에는 하나의 값만 저장되어야 하며, 테이블 구조가 일관되고 단순해야 합니다.



2. 1정규형의 조건

  • 각 컬럼은 단일값(원자값) 만을 가져야 한다.
  • 중복된 컬럼이나 반복되는 컬럼 그룹이 없어야 한다.
  • 테이블은 정규화되지 않은 중첩된 데이터를 포함하지 않아야 한다.


3. 1정규형을 위반하는 예시

  • sql

      -- 정규화되지 않은 테이블 (1NF 위반)
      CREATE TABLE 학생 (
          학번 INT PRIMARY KEY,
          이름 VARCHAR(20),
          수강과목 VARCHAR(100)  -- 수학, 영어 같이 여러 과목이 한 셀에 저장됨
      );
    

  • 학번 이름 수강과목
    1 홍길동 수학, 영어
    2 이순신 과학
    3 강감찬 국어, 사회, 수학
  • 수강과목 컬럼이 여러 값을 포함하여 원자값이 아님 → 1NF 위반



4. 1정규형으로 정규화한 예시

  • sql

      -- 정규화된 테이블 구조 (1NF 만족)
      CREATE TABLE 학생 (
          학번 INT,
          이름 VARCHAR(20),
          수강과목 VARCHAR(20),
          PRIMARY KEY (학생ID, 수강과목)
      );
    

  • 학번 이름 수강과목
    1 홍길동 수학
    1 홍길동 영어
    2 이순신 과학
    3 강감찬 국어
    3 강감찬 사회
    3 강감찬 수학
  • 각 셀에 하나의 값만 존재 → 1정규형 만족



5. 요약

  • 1정규형은 데이터의 원자성(Atomicity) 확보가 핵심입니다.
  • 반복 컬럼을 제거하고 각 값이 독립적으로 행을 구성하도록 테이블을 재설계해야 합니다.
  • 이는 데이터 검색의 효율성데이터 무결성 유지 를 위한 기본 단계입니다.


데이터베이스 정규화 (Database Normalization) 관련글 링크


정규화 정리

  • 정규형 해결하는 문제
    1NF 반복되는 속성 제거
    2NF 부분 함수 종속 제거
    3NF 이행적 함수 종속 제거
    BCNF 후보키가 아닌 결정자 제거
    4NF 다치 종속 제거
    5NF 조인 종속으로 인해 발생하는 중복 제거
    6NF 시간적 속성 이나 변화 이력 관리



  • 도움이 되셨으면 하단의 ❤️ 공감 버튼 부탁 드립니다. 감사합니다! 😄
  • 일부 모바일 환경에서는 ❤️ 버튼이 보이지 않습니다.

728x90
반응형

'SQL' 카테고리의 다른 글

3정규형(3NF)의 개념  (0) 2025.05.05
2정규형(2NF)의 개념  (0) 2025.05.03
Oracle Procedure 오라클 프로시저 프로시져  (0) 2024.11.13
Oracle INDEX 오라클 인덱스  (0) 2024.11.13
Oracle Trigger 오라클 트리거  (1) 2024.11.13

+ Recent posts