[SQLD] SQL 기본
·
자격증/SQLD
SQL 기본 DML (Data Manipulation Language: 데이터 조작어) SELECT SELECT (ALL) : 중복된 데이터가 있어도 모두 출력 SELECT DISTINCT : 중복된 데이터가 있는 경우 중복제거 출력 SELECT FROM GROUP BY 칼럼명1, 칼럼명2 : 중복제거 출력 데이터베이스 테이블에 들어있는 데이터에 변형을 가하는 종류의 명령어 INSERT UPDATE DELETE 설명 방식에 따른 분류 절차적 데이터 조작어(procedual DML) What + How 사용가자 어떤 데이터를 원하는지 + 어떻게 데이터를 접근해야 하는지 명세 비절차적 데이터 조작어(nonprocedual DML) What 사용자가 어떤 데이터를 원하는지만 명세. How는 DBMS에 맡김 호..
[SQLD] 데이터 모델과 SQL
·
자격증/SQLD
1. 관계와 JOIN의 이해 SQL에서 관계를 맺는다는 건 식별자를 상속하고, 상속된 속성을 매핑키로 활용하여 데이터를 결합한다는 의미다. (PK와 FK의 상호 관계) 이를 조인(Join) 이라고 한다. 두 데이터 집합 간 연결고리(교집합)라고 이해할 수 있다. 2. 모델이 표현하는 트랜잭션의 이해 트랜잭션은 데이터베이스의 논리적 연산단위다. 트랜잭션의 특징 DBMS는 원자성(Atomicity), 일관성(Consistency), 고립성(Isolation), 지속성(Durability) 이 만족해야 한다. 다음 조건들의 영어 첫 단어를 인용해 ACID 특성(ACID property)라고 한다. 원자성 (Atomicity) 트랜잭션 실행 도중에 문제가 발생했을 경우, 중단된 상태가 아닌 모두 실패하거나, 모..
[SQLD] 정규화 (Normalization)
·
자격증/SQLD
정규화 (Normalization) 정규화란 데이터 정합성(데이터의 정확성과 일관성을 유지하고 보장)을 위해 Entity(이하 테이블)를 작은 단위로 분리하는 과정이다. 장점 이상 현상 제거 및 방지 데이터베이스 구조 확장시 재 디자인 최소화 데이터 입력/수정/삭제 성능 향상 단점 Join 연산 증가 데이터 조회 성능 저하 단, 항상 조회 성능을 저하시킨다는 것은 아님. 기본적으로 중복된 데이터를 제거함으로써 조회성능을 향상시킬 수 있음을 알아야한다. 성능을 고려한 데이터 모델링의 순서는 정규화 수행 → DB 용량 산정 → 트랜잭션 유형 파악 → 반정규화(역정규화) → PK/FK 조정 → 데이터 모델 검증 정규화의 종류 1. 1차 정규화 같은 성격과 내용의 속성이 중복될 때, 1. 중복 값은 제거 2. ..
[SQLD] 데이터 모델링의 이해
·
자격증/SQLD
데이터 모델의 이해 데이터 모델링이란 정보 시스템을 구축하기 위한 데이터 관점의 업무 분석 기법 현실 세계의 데이터(what)에 대해 약속된 표기법에 의해 표현하는 과정 데이터베이스를 구축하기 위한 분석/설계의 과정 모델링의 특징 현실세계를 일정한 형식에 맞추어 표현하는 추상화의 의미를 가짐 시스템 구현, 업무분석, 업무 형상화의 목적이 있음 복잡한 현실을 제한된 언어나 표기법으로 이해하기 쉽도록 하는 단순화의 의미를 가짐 애매모호함을 배제하고 누구나 이해 가능하도록 정확하게 현상을 기술하는 정확화의 의미를 가짐 데이터 모델링 자체로 업무를 설명하고 분석하는 부분에서도 매우 중요한 의미를 가짐 데이터 모델링 유의점 중복(Duplication) 데이터베이스가 여러 장소에 같은 정보를 저장하는 잘못을 하지 ..
[GitHub] git push origin main 오류
·
GitHub
git push origin main시 오류가 발생하면 1. git pull origin main을 먼저 진행해 본다. read me 등의 생성, 변화로 인해 원격저장소와 로컬 저장소의 자료가 달라서 오류가 발생할 수 있다. 따라서, git pull origin main을 먼저 진행해 본다. 2. force push 해본다. git push -u origin +main 이 방법은 조심해야 한다. 강제 push를 하게 되면 로컬에 없고 원격에 있던 자료를 잃게 된다. 그래서 1번 방법으로 해결하는 게 낫다. 이 방법 모두 안된다면 먼저 push 브랜치 장소를 main이 아닌 master로 작성 후 실행해보자. github에서는 작년 10월 이후로 Black Lives Matter 운동에 동참하며 브랜치 이..
[GitHub] git repository 연결 시 오류 사항
·
GitHub
remote: Support for password authentication was removed on August 13, 2021. remote: Please see https://docs.github.com/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication. GitHub에서는 2021년 8월 13일부터 암호 인증을 더 이상 지원하지 않습니다. 라는 뜻인 것 같다. 아마도 맥에서만 발생하는 푸쉬 오류로 보임. 문제 해결방법 1. 깃허브 웹에서 Setting 클릭 이때 주의사항으론 레..