no image
[Database] DB 설계시 필수 덕목 (이상현상 -> 정규화)
DB 설계시 가장 중요한 대 원칙은 다음과 같다DB 설계의 핵심은 중복(Duplicated) 을 없애는 것이다위와 같이 게시글 데이터가 DB에 있다고 가정하자.이때, 박재성 이란 사람이 박지성으로 개명하게 되어 모든 테이블의 데이터를 변경해야하는 상황이 발생했다.우리는 이럴때 그러면 ctrl+F 로 모든 데이터를 찾아 일일히 수정해줘야한다.열심히 데이터를 수정하다가, 실수로 뒷쪽 순번의 데이터 수정을 누락하게 되어 박재성으로 남겨둔다면 어떻게 될까?시간이 많이 지난후, 만약 132번 게시글에 대한 신고가 접수되어 작성자를 찾으려고 검색해도 박재성이란 사람은 검색되지 않을 것이다.이러한 상황이 발생한 궁극적인 이유는 데이터 중복이 많기 때문인데, 중복되는 데이터가 많으면 많을 수록 데이터 수정시 중복되는 ..
2025.05.01
no image
[Database] 데이터 베이스 네이밍 규칙
흔히 데이터베이스를 작성할 때 지켜야할 국룰에 대해 알아보자테이블 명, 컬럼 명을 소문자로 작성하자테이블, 컬럼 명은 Java에서 변수를 설정할 때 사용하는 낙타 표기법 처럼 대소문자를 혼용하여 쓰지 않는다 !그 이유는 MySQL 같은 경우, 운영체제 설정에 따라 대소문자를 구분하여 해석하기도 하고, 대소문자를 구분하지 않고 해석하기도 하기 때문이다. -> 즉 그냥 오류를 없애려면 대소문자를 혼용하여 쓰지 말자 snake_case 를 사용하자낙타표기법에서는 우리가 tableName 처럼 대소문자를 구분하여 띄워쓰기를 표현하였는데, 이 대신 _(언더바) 문자를 이용하여 띄워쓰기를 표현하자tableName // 이런거 안됨table_name // 요롷게 쓰자 축약어를 쓰지 말자코드는 팀원 모두가 이해할 수 ..
2025.05.01
no image
[Database] Primary Key (PK), Foreign Key(FK)
패널티킥, 프리킥 아니다.. 진짜 뒤진다..Primary Key(PK) -> 기본키우리는 서로를 구분할 수 있도록 각자 고유의 주민 번호가 존재한다.주체가 사람이 아닌 다른 객체일 때, 각 객체를 구분하기 위해서 주민등록번호와 같은 PK(기본키)를 사용한다.기본키는 특정 데이터 값을 식별하기 위한 값으로, 반드시 다음과 같은 특성을 가진다기본키는 중복 되어선 안된다기본키의 값은 비어있으면 안된다 현업에선 이렇게 설정한다 카더라~~ 카더라는 공부하며 얻은 지식들을 적어보는 코너이다ㅋㅋ내가 아직 현직자가 아니므로 그냥 그렇다더라~ 하고 넘어가자어느 회사에서 데이터베이스를 관리할 때, 주민번호나 이메일 등을 PK로 설정하는 것을 볼 수 있다.하지만, 주민번호나 이메일은 상황에 따라 변동이 될 가능성이 있다. ..
2025.05.01
no image
[Database] 데이터베이스 모델링 (Database Modeling)
SQLD 시험을 준비하며, 정말 여러 SQL 구문을 만나고 실습을 해보았다.내 생각에 SQLD 시험을 준비하는 과정이나, SQL을 공부하는 것은 단순히 SQL 해석능력이 있는가를 알아보는 시험으로 느껴졌다.가장 중요한 점은 내가 과연 DB를 직접 설계하고 활용하고 최적화 할 수 있을까? 라는 생각이 늘 들었고, 학사 논문을 준비하는 과정에서 그나마 좀 여유롭게 실제 공부 내용을 적용해 볼 수 있도록 DB 설계에 대해 공부하려고 한다.(사실 말이 여유롭지 빡세게 해야한다 !)실제 설계로 넘어가기 전, 중요한 DB 개념들을 확실히 이해 하고 넘어가고자 한다. 앞으로 몇개의 포스팅은 DB 개념의 관한 것 일것이다.데이터 베이스 모델링 이란? (Database Modeling)우리는 웹 & 모바일 앱 등을 운영..
2025.05.01
[RDB] SQL과 NoSQL 기반의 데이터베이스 입문 1장 연습문제
혼자 풀이하다보니 틀린 답일 수도 있습니다. 틀린 답에 대한 매콤한 회초리 대신 따스한 피드백 주시면 감사드리겠습니다 :) 1. 데이터와 정보에 대한 설명으로 가장 적합한 것은?답 : 1. 정보는 데이터를 처리해서 얻을 수 있는 결과이다 2. 파일 처리 방식과 비교하여 데이터베이스 관리 시스템을 활용할 때의 장단점에 대한 설명으로 옳지 않은 것은?답: 4. 데이터간의 복잡한 관계로 인하여 표준화가 어렵다 3. 다음 보기가 설명하는 것은?- 관계형 데이터 베이스안에 테이블들은 서로 연결해줄 수 있는 공통의 속성을 공유한다. 이때 테이블 속성간에 같은 데이터가 여러번 나타날 수 있는데 이를 설명하는 용어이다.- 데이터 중복이 허용되는 경우의  대부분은 테이블 간의 연결이나 성능 향상을 위해 필요한 경우로 한..
2023.10.07
no image
[RDB] SQL과 NoSQL 기반의 데이터베이스 입문 1장
1장 : 데이터 베이스의 개념 일상에서 데이터 베이스(이하 DB와 혼용)란  -> 가공 이전의 데이터나 가공 이후 생성된 정보 저장소를 의미한다. 우리는 대부분 '데이터'와 '정보'라는 용어를 혼용해서 사용한다. 그렇다면 우리가 흔히 말하는 데이터와 정보의 차이는 무엇일까?---> 책의 내용에 의하면, 우리가 말하는 데이터란, 현실 세계에서 관찰, 수집으로 나타난 객관적 사실(Fact) 및 획득된 그대로의 정량적, 정성적 실제값(Value)를 의미한다. 정보란 정보시스템을 통해 획득된 데이터에 의미를 부여하여 가공처리를 통해 의사결정에 활용하도록 체계적으로 조직한 결과물이다. 따라서, 데이터는 현실세계로부터 상대적으로 쉽게 획득이 가능하나, 데이터는 특별한 노력의 과정을 통해 획득이 가능하다는 차이점도 ..
2023.10.07