💡 데이터베이스에서 다양한 유형의 관계는 무엇이 있나요? 답변 : 데이터베이스에는 3 가지 유형의 관계가 있습니다. 일대일 : 한 테이블은 비슷한 종류의 열을 가진 다른 테이블과 관계가 있습니다. 각 기본 키는 관련 테이블에서 하나의 레코드 또는 하나의 레코드와 관련이 없습니다. 일대다 : 한 테이블은 기본 및 외래 키 관계가있는 다른 테이블과 관계가 있습니다. 기본 키 테이블에는 관련 테이블에없는 하나 또는 여러개의 레코드와 관련된 하나의 레코드 만 포함됩니다. 다대다 : 두 테이블의 각 레코드는 다른 테이블의 여러 레코드와 관련 될 수 있습니다. 💡 SELECT 쿼리의 수행 순서를 알려주세요. FROM, ON, JOIN > WHERE, GROUP BY, HAVING > SELECT > DISTINCT..
💡 관계형 데이터베이스의 구성요소에 대해서 설명하세요. 데이터가 테이블에 저장. 구성요소: 행(튜플), 열(속성) 행은 순서가 없지만, 열은 순서가 있다. 스키마: 이름과 데이터 유형을 정의 키: 테이블에서 특정 행을 유일하게 식별할 수 있게 하는 특징, 열 혹은 복수의 열 모음 테이블의 각 행에는 프라이머리 키 값이 반드시 있어야 한다. 외부키 이용하여 다른 테이블과 링크할 수 있다. 그 값이 다른 테이블의 키 열의 값과 같은 열 참조무결성: 모든 외부 키 값이 참조하는 테이블의 값으로 존재하는 경우 💡 Key란? Key의 종류에 대해서 설명하세요. 릴레이션에 포함된 튜플을 유일하게 구분해주는 역할을 키가 합니다. 키의 종류로는 (1)슈퍼키 (2)후보키 (3)기본키 (4)대체키 (5)외래키가 있습니다...
데이터베이스에서의 트랜잭션 이란? ➡️ 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 작업의 단위 이 때, 하나의 논리적 기능을 수행하기 위해서는 여러 개의 질의(쿼리)가 필요할 수 있음 트랜잭션은 묶여있는 여러 질의들을 모두 완료해야 정상적으로 종료됨 만약 트랜잭션에 속해있는 질의 중 하나라도 실패하면 그 트랜잭션은 실패한 것임 EX) 인터넷 뱅킹으로 10000 원을 송금하는 상황 A 가 B 에게 10000 원을 송금하는 경우 A 의 계좌에서 10000 원을 차감하고, B 의 계좌에서 10000 원을 증가시킴 START TRANSACTION; UPDATE Account SET balance = balance - 10000 WHERE account_id = 'A'; UPDATE Account SET..
데이터베이스 테이블에 대한 검색 성능의 속도를 높여주는 자료 구조 동작 원리 특정 컬럼에 인덱스를 생성하면, 해당 컬럼의 데이터들을 정렬하여 별도의 메모리 공간에 데이터의 물리적 주소와 함께 저장 쿼리문에 인덱스 생성 컬럼을 WHERE 조건으로 거는 등, 작업을 할 경우 옵티마이저에서 판단하여 생성된 인덱스를 활용 가능 인덱스에 저장되어 있는 데이터의 물리적 주소로 가서 데이터를 가져오는 식으로 동작하게 되어 검색 속도 향상 오름차순으로 정렬하기 때문에 정렬된 주소 체계 💡 옵티마이저 : 가장 효율적인 방법으로 SQL을 수행할 최적의 처리 경로를 생성해주는 DBMS의 핵심 엔진, 컴퓨터의 두뇌가 CPU인 것처럼, DBMS의 두뇌는 옵티마이저 인덱스의 장점 가장 큰 특징은 데이터들이 정렬되어 있다는 점 조..
1장 데이터 모델링의 이해 스키마 개념 스키마 조직체 전체를 관장하는 입장에서 DB를 정의한 것 DB 전체를 기술한 것이기 때문에 한 개밖에 존재할 수 없음 DB의 전체적인 논리적 구조 스키마 라고 하면 보통 이 친구 내부 스키마 물리적인 저장장치 입장에서 DB가 저장되는 방법을 기술한 것 구체적으로 개념 스키마를 디스크 기억장치에 물리적으로 구현하기 위한 방법을 기술한 것으로서, 주된 내용은 실제로 저장될 내부레코드 형식, 내부레코드의 물리적 순서, 인덱스의 유/무 데이터의 실제 저장방법을 기술 외부 스키마 실세계에 존재하는 데이터들을 어떤 형식, 구조, 배치 화면을 통해 사용자에게 보여줄 것인가 전체 데이터 베이스의 한 논리적 부분 → 서브 스키마 같은 데이터베이스에 대해서도 서로 다른 관점을 정의할..