SQL23 PK와 FK PK 테이블을 생성할 때 PK를 정의한다. PK는 각 행을 고유하게 식별해주는 컬럼이다. 테이블당 하나만 정의 가능하다. NOT NULL + UNIQUE KEY값을 가짐 고유 인덱스가 자동으로 생성된다. 여기서 테이블당 하나만 정의 하다는 것을 이해할 때 PK가 여러 컬럼으로 구성될 수 있지만, PK값은 하나인 것으로 이해해야 한다. 예를 들어, 상품의 거래내역 테이블에서 PK값으로 상품코드와 판매코드를 키값으로(PK) 설정해 ROW를 식별하는 것과 같다. 만약 상품코드만 잡게 되면 동일 상품에 대해서 식별할 수 없고, 판매코드로 잡으면 같은 영수증에 판매건에 대해 식별할 수 없으니 두 값의 CONCAT값으로 키값을 잡는 것! FK 테이블을 생성할 때 FK를 정의한다. FK가 정의된 테이블이 자식 테이블.. 2021. 3. 4. DML, DDL, DCL, TCL에 대해 아주 외우기 귀찮지만, 이것 또한 큰 개념으로 이해해보자 SQL 언어의 특징 - 비절차적 언어이기 때문에 파이썬처럼 어떻게 처리할 것인지가 아닌 무엇을 원하는지를 명시해야 한다. - 일정한 형식에 의해 수행된다. - 관계형 데이터 베이스(RDBMS)의 테이블 내 데이터를 다룬다. 때문에, 데이터베이스를 다루고(DCL) 그 데이터베이스 내의 테이블을 다루고(DDL) 그 테이블 내의 데이터를 다루며(DML) 그 작업을 수행하는 명령어(TCL)를 다룬다. 2021. 3. 3. ON DELETE CASCADE와 SET NULL 먼저 이해해야 할 큰 개념은 무결성 제약 조건이다. 무결성 제약 조건 데이터 무결성 : 데이터를 인가하지 않은 방법으로 변경/삭제 할 수 없도록 보호하는 성질 위 개념으로 무결성 제약 조건을 이해해 보면 제약하는 조건에 있어, 허가된 계정 외에 데이터를 변경/삭제 할 수 없도록 보호하는 성질이라고 볼 수 있다. 데이터베이스의 5가지 제약조건은 다음과 같다. 위 다섯 가지 중에 FOREIGN KEY(외래키)는 해당 컬럼에 참조하는 테이블의 값들만 사용한다는 의미다. 여기서 참조 무결성 원칙에 의해 참조 테이블의 본래 데이터에 대한 제약 조건이 필요하다. 그 4가지 옵션은 다음과 같다. MYSQL 외래키(Foreign key) 지정 시 on delete rule(삭제 시), on update rule(변경 .. 2021. 3. 3. UNION ALL 과 UNION DISTINCT 1. 상황 - 유통 상품 데이터 중 서로 다른 기준의 분류체계 테이블 존재 - 두 카테고리 모두 상품 테이블이 각각 존재하며, 중복이 발생할 수 있음 테이블 A 소분류 소분류 코드 중분류 중분류 코드 대분류 대분류 코드 A 1233 요구르트 13 유제품 3 B 3133 과일음료 15 과채음료 2 C 2333 비타민음료 16 기능성음료 1 테이블 B 통합 소분류 통합 소분류 코드 채널 통합 중분류 통합 중분류 코드 통합 대분류 통합 대분류 코드 R 1232 마트 요구르트/발효유 1233 유제품 1233 D 2322 슈퍼 과채음료 15135 후레바 1523 Q 1555 편의점 비타민 163234 기능성 2452 2. 목적 특정 카테고리 내 상품 리스트 추출 3. 현재 코드 테이블 A의 카테고리 정보 중 카테.. 2021. 3. 2. 이전 1 2 3 4 5 6 다음