072DATA

ERDCloud 사용법 (팀 프로젝트, ERD 생성) 본문

BackEnd/DATABASE

ERDCloud 사용법 (팀 프로젝트, ERD 생성)

0720 2024. 10. 11. 00:13

오늘은 팀 프로젝트를 시작하기에 앞서 ERDCloud를 활용하여 데이터베이스 세팅을

더 쉽고 효율적으로 할 수 있도록 학습해 보았습니다..! 사실 예전에 해봤는데 다 까먹음

 

 

ERDCloud 링크

https://www.erdcloud.com/

 

ERDCloud

Draw ERD with your team members. All states are shared in real time. And it's FREE. Database modeling tool.

www.erdcloud.com

 

팀 프로젝트 생성

 

팀으로 시작하기 위해서 사진에 표시된 버튼을 누르고

 

팀 이름과 팀에 초대할 유저의 아이디를 저장하고 프로젝트를 생성합니다.

 

 

 

만약 팀 프로젝트를 생성한 뒤에 다른 유저를 초대하려면

팀 프로젝트에서 사진에 나와있는 수정 버튼을 눌러 처리하면 됩니다.

 

 

테이블 생성 및 프라이머리 키

탭에 있는 4번째 순서인 테이블 생성 버튼을 눌러서 테이블을 생성하고

노란색 플러스 버튼을 눌러서 프라이머리 키를 추가합니다

 

 

프라이머리 키는 테이블에서 각 레코드를 고유하게 식별할 수 있는 필드입니다!!

각 테이블에는 반드시 하나의 프라이머리 키가 있어야 하고 중복되지 않는 값이어야 합니다

따라서 일반적으로 id라는 컬럼을 프라이머리 키로 설정할 수 있으며( 꼭 id가 아니어도 됨)

프라이머리 키로 지정된 컬럼은 기본적으로 NULL 값을 가질 수 없습니다

데이터베이스가 각 레코드(행 혹은 row)를 고유하게 식별할 수 있게 해줍니다

 

 

연결선을 사용하여 외래 키 설정하기

 

만약 관계를 가지는 테이블이 있다면 관계선을 설정해 이어준 다음 외래 키( Foreign Key )를 설정할 수 있습니다

 

예를 들자면 게시글을 회원이 작성했다면 회원에 대한 정보를 보여주어야 하니까

회원의 테이블과 게시글의 테이블을 연결 시켜야 합니다 한 사용자(Kim)가 여러 게시글을 작성할 수 있고 (게시글 1,2,3)

 

하나의 게시글은 한 사용자에게만 속하기 때문에 (각 게시글은 user_id 하나만) ERD의 연결선을 한개 또는
여러개로 설정하여 이어주면 됩니다

 

 

  • 1:1 = 서로 딱 하나씩만 연결
    • 한 개의 USER_ID로 게시글을 단 한 번만 작성할 수 있으며
      그 게시글에는 하나의 USER_ID만 담기게 되는 경우
  • 1:N = 한쪽은 하나, 다른 쪽은 여러 개 연결 가능
    • 한 개의 USER_ID로 여러 개의 게시글을 작성할 수 있으며
      그 게시글에는 하나의 USER_ID만 담기게 되는 경우
  • N:M = 양쪽 다 여러 개 연결 가능
    • 하나의 게시글에 여러 명의 사용자가 좋아요를 누를 수 있고
    • 사용자는 하나의 게시글뿐만 아니라 다른 게시글에도 좋아요를 누를 수 있는 경우

 

 

관계 설정하기

'

 

연결하고나서 식별 관계와 비-식별 관계에 대해서 나오는데 이게 굉장히 헷갈립니닷..

 

식별 관계의 경우 부모의 프라이머리 키를 자식의 외래 키인 동시에 프라미어리 키로 사용하는 관계입니다..

 

식별 관계의 특징

 

  • 자식 테이블의 레코드(행 혹은 row)가 부모 테이블의 프라이머리 키 없이는 존재할 수 없음
  • 외래 키와 프라이머리 키가 같은 컬럼으로 설정됨
  • 복합 키를 만들어야 하므로 복잡함.

 

비-식별 관계의 경우에는 부모의 키는 자식의 외래 키일 뿐자식은 독립적인 키를 가지게 됩니다!

 

비-식별 관계의 특징

 

  • 부모의 프라이머리 키는 자식의 외래 키로만 사용하고 자식은 독립적인 프라이머리 키를 가짐
    따라서 부모와 관계는 있지만 독립적인 식별자를 가질 수 있음.

 

물론 더 이해하려고 하면 되게 어려워질 것 같은 개념인 것 같은데

프론트 개발자 입장에서는 이정도만 알아도 충분할 것 같단 느낌이 드는 것 같습니닷..

 

따라서 저는 게시물은 독립적인 프라이머리 키를 가진  ID값이 존재하고  작성자의 데이터

정도를 가져오면 충분하기 때문에 비-식별 관계를 사용하여 부모의 아이디를 외래 키로 가져왔습니다

 

 

내보내기

 

마지막으로 ERD의 유용한 기능인 내보내기 기능인데 설정한 ERD를 SQL문으로 설정할 수 있어서

데이터 베이스를 세팅하기 전 꼭 필요한 과정이라고 생각이 들었습니다..! 그럼 20000!!!!

 

'BackEnd > DATABASE' 카테고리의 다른 글

나만의 추억 앨범 만들기 - 데이터베이스 활용( Firestore Database )  (2) 2024.07.23
파이어 베이스.. 이 녀석의 사용 설정  (0) 2024.07.19
2023-11-20 : (  (1) 2023.11.20
2023-11-17 : l  (0) 2023.11.17
2023-11-16 : )  (0) 2023.11.17