SQL
SQLD 4
관계 관계는 크게 식별/비식별 관계로 나누어 볼 수 있어요. 말그대로 식별할 수 있거나 없는 것을 의미한다고 하는데 솔직히 처음에 이게 무슨 말인가 싶었어요... 그래서 예시를 열심히 찾고 찾았답니다 :] 이걸 알기 전에 Foreign Identifier에 대해 알아야 해요! 외부식별자는 속성을 말하는데 이름처럼 내 엔터티 아니고 다른 엔터티 즉, 자식 엔터티에 생성되는 속성이라는 거예요. 예를 들어 고객과 계좌 엔터티가 각각 존재한다면, 고객은 고객만으로도 존재할 수 있지만 계좌는 고객이 만들어줘야 존재할 수 있잖아요? 이때 내 엔터티, 즉 Strong Entity가 고객이 되고, 내 거 아닌 엔터티, 즉 Week Entity가 계좌가 되는 거예요, 1. Identification Relationshi..
SQLD 3
1. 데이터 독립성 1) 데이터 독립성의 필요성 간단하게 말하면, 개별적인 데이터 그 자체로도 의미가 있고 다른 서비스와 결합해서도 의미가 있다는 거예요! 이렇게 되면 독립적인 데이터는 개인의 고유한 기능을 가지고 그것을 제공할 수 있다는 장점을 가질 수 있겠죠. 원래는 데이터 종속성이라는 게 있었어요. 보통 이건 Application(사용자 요구사항을 처리하는 사용자 접점 인터페이스 오브젝트)을 말해요. 원래는 데이터를 구성할 때 파일 형식으로 했대요. 그래서 인덱스를 따로 구현해서 접근해야 했어요. 문제는 이게 발전하면서 점점 난해해졌다는 거죠. 그런 면에서 데이터 독립성은 계속해서 늘어나는 유지보수 비용을 절감할 수 있고, 데이터 복잡도를 낮출 수 있으면서 중복된 데이터를 줄이기 위해 사용할 수 있..
SQLD 2
1. 데이터 모델링의 3단계 진행 모델링에도 진행 과정이 있어서 각 단계에 이름이 붙어있어요. 얼마나 추상화되었느냐에 따라 개념적/논리적/물리적 데이터 모델이라고 불러요! 먼저 가장 추상화 수준이 높은 모델로 개념적 데이터 모델이 있어요. 다른 데이터 모델에 비해 상대적으로 현실세계와 가까운 느낌이라고 볼 수 있어요. 굉장히 업무중심적이고 포괄적인 모델링인데, 현실세계에 있는 정보 중에서도 모델링의 목적과 맞는 정보(업무중심적)들을 Entity 중심으로 가지고 오거든요! 개념적 데이터 모델 이후에는 이를 좀 더 구체적으로 업무의 흐름과 연관시킬 필요가 있어요. 그렇게 만들어낸 모델을 논리적 데이터 모델이라고 해요. 이를 데이터베이스 저장구조에 맞게 모델링 하는 방식을 물리적 데이터 모델링이라고 해요. 실..
SQLD 1
SQLD 시험 접수하고 돌아왔습니다! 그동안 MySQL공부를 좀 했는데 이게 SQLD에 도움이 되면 좋겠어요~ 1. 모델링이란? 이케아에서 조립가구를 샀을 때도 설명서를 보고 구성품이 뭐가 있나~ 어떤 부품과 연결되나~ 건물을 세울 때도 설계도를 보고 자재를 들여오고 각 부품끼리 맞춰서 뚝딱 지어내잖아요? 그거랑 같은 거예요! 그 설명서의 그림처럼, 건물의 설계도처럼 모델을 만드는 게 바로 모델링이에요. 다만 데이터 모델링은 조립가구나 건물처럼 현실에 있는 것이 아니기 때문에 현실세계에 있는 것을 어떠한 표기법과 같은 규칙을 가지고 추상화, 단순화, 명확화해서 모델로 만들어야 해요! 1) 추상화 : 현실세계의 것을 다같이 약속한 형식에 맞추어서 표현하는 걸 추상화라고 해요. 다른 말로는 모형화한다고 하죠..
SQL_05 하룻데엔새싹 범 무서운 줄 모른다.(1편)
지금까지 sql 이론을 공부하면서 과연 이걸 얼마나 써먹을 수 있을까 하는 의문과 함께 SQL에 한 번 덤벼보기로 했습니다.준비물: 오래 앉아있을 수 있는 엉덩이, 코드 타이핑할 솜주먹, 노가다를 해도 알아내고야, 완성하고야 말겠다는 의-지 가보자고요~! 주제는 등록된 영화나 드라마 판권을 결제해 소장할 수 있는 OTT플랫폼입니다. 왜냐구요? 제 취미가 '영화 판권 사서 보기'이기 때문에 첫 코드짜기를 완수하기 위해 흥미가 있는 것으로 준비했어요. 언어 공부를 할 때도 좋아하는 것으로 먼저 시작하라고 하잖아요~ 제 목표는 5개의 테이블에 각 5개의 레코드를 삽입하고, 5개의 검색 질의 레코드를 만드는 거예요! 1. 관계 데이터베이스 스키마1.1- 테이블 5개 정하기먼저 신나는 마음으로 관계 데이터베이스 ..
SQL_04
데이터 타입 데이터의 타입이나 길이 결정 데이터 타입의 종류 - CHAR( ): 크기의 고정 길이 지정 (1~2,000바이트) - VARCHAR2( ): 크기의 가변 길이 지정 (1~4,000바이트) - NVARCHAR2( ): 국가별 문자 집합, 크기의 문자/바이트의 가변 길이 지정 (1~4,000바이트) ex) 한국어 입력할 거다!하면 이거 쓰면 돼요 - NUMBER(p,s): 정밀도(p)와 스케일(s) 숫자 데이터 (p: 1~38), (s: -84~127) - DATE: 날짜 형식 지정 - ROWID: 테이블 내 행의 고유 주소, 64진수 문자 타입 (행당 6바이트/10바이트) - BLOB: 대용량 바이너리 데이터 저장 (최대 4GB) - CLOB: 대용량 텍스트 데이터 저장 (최대 4GB) - B..