관계형 데이터베이스(relational database)개념과 relation, primary key(기본키), foreign key(외래키), constraints를 알아봅시다

Ғылым және технология

#relationaldatabase #관계형디비 #relationaldatamodel #relation #domain #attribute #tuple #key #superkey #primarykey #candidatekey #foreignkey #constraints
오늘날 개발에서 가장 많이 사용되는 DB는 관계형 데이터베이스(relational database) 입니다.
그래서 관계형 데이터베이스의 기본 개념을 잘 알고 있는 것이 중요한데요,
관계형 DB는 relational data model을 통해 구조화된 DB이기 때문에
relational data model의 주요 개념부터 차근차근 설명합니다.
그리고 relational data model에서 중요한 개념인 key도 설명을 하는데요,
primary key(기본키), foreign key(외래키)를 포함해서
각종 다양한 key들을 쉽게 설명합니다.
끝으로 relational model에서 constraints(제약 사항)에 대한 부분도 설명하니까요
끝까지 유익하게 봐주세요 :)
그럼 오늘도 고고씽!!
00:00 인트로
00:10 relational data model
00:23 수학에서 relation
03:42 relational model에서 relation
09:13 relation schema, .. etc
10:56 relational database(관계형 디비)
11:40 relation의 특징들
14:03 NULL의 의미
15:13 key 설명 (기본키, 외래키 등등)
18:57 constraints 설명

Пікірлер: 69

  • @PRECISION-dc5ns
    @PRECISION-dc5ns2 жыл бұрын

    정말 이 채널 왜 더 안뜨는지 이해가 안가네요... 개발자로 일하고 있는데 다시 개념 정립이 필요할것 같아서 찾던중 이런 좋은 채널을 발견해서 너무 도움 많이 되고 있습니다!!! 앞으로도 영상 잘 부탁드릴게요!!

  • @ez.

    @ez.

    2 жыл бұрын

    우와 극찬 정말 감사합니다 ㅠㅠ 도움이 된다고 말씀주실 때 제일 뿌듯하고 힘이 나는 것 같아요 :) 앞으로도 계속해서 좋은 영상으로 찾아뵐게요 다시 한번 귀한 댓글 감사합니다 !!

  • @user-tp6zx5be5v
    @user-tp6zx5be5v Жыл бұрын

    진짜 퀄리티 오지네요 현업으로 복귀하신다고 들었는데 돈 내서라도 더 듣고 싶네요

  • @user-tr8xe6nb7i
    @user-tr8xe6nb7i2 ай бұрын

    이분영상몇개봣는데 깊이가 다르네여

  • @jordany126
    @jordany126 Жыл бұрын

    우리나라 채널중에 cs 기본 개념 정리가 제일 잘된 채널 같네요

  • @ez.

    @ez.

    Жыл бұрын

    와우 이건 정말 어마어마한 극찬인데요?ㅠㅠ 너무 너무 감사합니다 ㅠㅠ!! 👍👍👍

  • @makefuckinggoodcomments
    @makefuckinggoodcomments8 ай бұрын

    최곱니다 최고

  • @Xjdgeye
    @Xjdgeye3 ай бұрын

    이렇게 좋은 강의를 무료로 봐도 되는 건지... 정말 감사합니다 최고에요 진짜

  • @user-kf2eg1nr2y
    @user-kf2eg1nr2y2 жыл бұрын

    당연할 수도 있지만 가면 갈수록 강의력이 좋아지는게 체감이 되네요 ㅎㅎ 오늘도 좋은 영상 감사합니다

  • @ez.

    @ez.

    2 жыл бұрын

    크으.. 열심히 찍고 또 열심히 편집하면서 최대한 보시는 분들이 매끄럽게 보실 수 있도록 노력하다 보니 조금씩 저도 성장하는 것 같아요 :) 귀한 댓글 감사합니다 !

  • @wisiasa
    @wisiasa10 ай бұрын

    고퀄리티의 좋은 강의 영상 감사합니다 ! :)

  • @eunjijeong9808
    @eunjijeong980810 ай бұрын

    맛있게 잘 이해했습니다. 감사합니다

  • @luv634
    @luv634Ай бұрын

    감사합니다

  • @homehub1
    @homehub18 ай бұрын

    빛이다 빛... 님덕에 디비 시험은 칠 수 있겠어요..

  • @user-jz8qt2px2b
    @user-jz8qt2px2bАй бұрын

    학교 수업이랑 같이 따라가고 있는데 볼때마다 감탄이 나오네요 .. 항상 감사드립니다 !.

  • @Dev_Owon
    @Dev_Owon9 ай бұрын

    좋은 영상 감사합니다!! 매우 기본적인 수학적 접근부터 설명해주셔서 기초를 매우 견고하게 쌓을 수 있을 것 같습니다.

  • @hyun9040
    @hyun90409 ай бұрын

    수업 몰입도 있어서 좋아요!!

  • @heartofJustin
    @heartofJustin6 ай бұрын

    강의가 좋네요,,.

  • @anguejin0024
    @anguejin00242 жыл бұрын

    귀한영상 감사합니다. 도움이 많이 되었습니다.

  • @ez.

    @ez.

    2 жыл бұрын

    귀한 댓글 항상 감사합니다 :)

  • @user-gk4lu6cd3d
    @user-gk4lu6cd3d Жыл бұрын

    와..엑셀 개념이 이거군요.. 익숙하게 이해가 잘 되네요..너무 감사합니다.

  • @user-xw4qq6or6q
    @user-xw4qq6or6q Жыл бұрын

    좋은 강의 감사합니다 !!!

  • @ez.

    @ez.

    Жыл бұрын

    좋은 댓글 감사합니다 👍👍👍

  • @HoLu1
    @HoLu1 Жыл бұрын

    취업준비하면서 이론이 많이 부족하다고 생각했는데 이런 좋은 채널을 발견해서 다행이네요 좋은강의 감사합니다!

  • @ez.

    @ez.

    Жыл бұрын

    좋게 봐주셔서 감사합니다 :) 좋은 영상으로 계속해서 꾸준히 응원할게요 :) 원하는 곳에 꼭 취직하시길요~!!

  • @user-xi8nc4ki3n
    @user-xi8nc4ki3n2 ай бұрын

    와 진짜... 미쳤습니다... 너무 감사합니다. 영상보고 감동이 몰려오네요...ㅠㅠ

  • @hyena-sunny
    @hyena-sunny5 ай бұрын

    와... 너무 잘보고 갑니다

  • @sunkyoungjin7744
    @sunkyoungjin7744 Жыл бұрын

    디비를 잘 이해하지 않은채로 하니 뭐든게 너무 어려워서 하기 싫어지더라구요.. 가뭄에 단비같은 강의네요 정말 감사합니다!!

  • @ez.

    @ez.

    Жыл бұрын

    그렇죠ㅠ 아무래도 잘 모르는 상태에서 하려면 답답하고 어렵고 그러면서 자연스럽게 하기 싫어지고요 ㅠㅠ 도움을 드릴 수 있어서 저도 많이 뿌듯합니다 👍

  • @user-zm6dw3rm7j
    @user-zm6dw3rm7j Жыл бұрын

    와 진짜 주옥같은 채널 오늘 알아갑니다. 다른사람이 질문해서 그걸 설명하려고 할 때 정리가 잘 안되는데, 여기와서 정리하고 갑니다

  • @ez.

    @ez.

    Жыл бұрын

    좋게 봐주셔서 감사합니다 :) 칭찬의 말씀 덕분에 저도 많이 뿌듯하네요 👍

  • @user-wi4jc3uv8z
    @user-wi4jc3uv8z11 ай бұрын

    잘 봤습니다.

  • @hoo7959
    @hoo79596 ай бұрын

    뭔가 구독 버튼을 누르게되는 영상이 하나씩있는데 그게 이 영상이다

  • @andy780216
    @andy780216 Жыл бұрын

    와 정말 너무 좋습니다

  • @ez.

    @ez.

    Жыл бұрын

    와우 영상 쭉 봐주셔서 감사해요 👍

  • @user-mq2tx2ph3i38
    @user-mq2tx2ph3i382 жыл бұрын

    우와 알고리즘수업에서 해시 코드 때문에 찾은 채널인데 데이터베이스로 또 유튜브 검색하던 차에 구독한 채널에서 이리 귀한 영상이 있ㄴ요!' 완전 우연!! 열심히 공부하겠습니다😊

  • @ez.

    @ez.

    2 жыл бұрын

    오! 나이스 타이밍이었네요😉 현재 백엔드 개발에 필요한 중요 지식 100개를 골라서 시리즈로 영상을 올리고 있는데요, 이제 DB를 다룰 순서였어서 차근차근 관련 영상을 만들어서 올리던 중이였죠~ 타이밍이 매우 좋았네요 ㅎㅎ (참고로 DB 끝나면 네트워크 다룰 예정이에요👍) 컴공 지식 중에 개발에 필요한 내용들 위주로 정리해서 올리고 있으니 많이 애용해주세요 :) 응원합니다 화이팅이에요!!

  • @macaronee28
    @macaronee28 Жыл бұрын

    좋은 영상 감사합니다 :)

  • @ez.

    @ez.

    Жыл бұрын

    저도 유익하게 봐주셔서 감사합니다 :)

  • @golang-java
    @golang-java2 жыл бұрын

    오 감사합니다

  • @ez.

    @ez.

    2 жыл бұрын

    히트택님 저도 댓글 항상 감사합니다 :)

  • @qwe2775
    @qwe2775 Жыл бұрын

    백엔드에서 가장 중요하다시피 하는게 DB라고 하는데, 좋은강의만들어 주셔서 감사합니다! 잘 따라가고 학습해보겠습니다!!

  • @ez.

    @ez.

    Жыл бұрын

    크~! 댓글 달아주시고 열심히 봐주셔서 너무 너무 감사합니다 :) 👍 응원합니다!!

  • @user-sn2qk9jw6n
    @user-sn2qk9jw6n Жыл бұрын

    운영체제 강의 다 듣고 오랜만에 데이버베이스 강의 들으러 왔습니다. 데이터베이스 강의도 잘 들어보겠습니다~

  • @ez.

    @ez.

    Жыл бұрын

    오 세승님 오랜만이에요~!ㅎ 잘 지내셨죠? DB 시리즈도 재밌게 봐주세요 :)

  • @_3_615
    @_3_61510 ай бұрын

    후보키랑 슈퍼키 쪽 개념이 모호했었는 데 덕분에 잘 정리했습니다!

  • @user-nm2fp8bo4v
    @user-nm2fp8bo4v Жыл бұрын

    와 설명 진짜 미쳤다

  • @user-sm9ce4tk2u
    @user-sm9ce4tk2u8 ай бұрын

    개쩐다 징짜

  • @ysng1623
    @ysng1623 Жыл бұрын

    항상 감사합니다. DB수업 듣기 전에 이 강의가 있었다면 A+을 쉽게 받았을거 같네요 ㅠ.ㅠ 지금 취준 중이라 CS복습할겸 정리중인데 혹시 내용들 정리해서 블로그에 포스팅해도 될까요? 당연히 출처는 표시하겠습니다..!(홍보도 할겸 동영상으로 달아서 표시하겠습니다..! ㅎㅎ)

  • @ez.

    @ez.

    Жыл бұрын

    영상을 좋게 봐주셔서 감사합니다 :) 그럼요~!! 홍보도 되고 저는 너무 좋죠~ 편하게 포스팅할 때 사용해주세요 👍

  • @bum7006
    @bum7006 Жыл бұрын

    오늘도 잘보고 갑니다. 헌데 예시에서 홍진호 grade가 4인 이유는 2*2로 이해하면 될까요~?

  • @ez.

    @ez.

    Жыл бұрын

    ㅋㅋㅋㅋ 그렇게 이해하셔도 전혀 무리 없습니다

  • @nininono9094
    @nininono9094 Жыл бұрын

    안녕하세요 영상 잘 봤습니다! referential integrity constraint 에서 fk와 pk의 도메인이 같아야 한다는게 이해가 잘 안가서 질문드립니다.! PLAYER 의 team_id value와 TEAM의 id value 가 같아야 된다는건 알겠는데.. 도메인이 같아야한다는게 FK와 PK 가 같은 테이블 내에 있어야한다는 뜻인가요??

  • @ez.

    @ez.

    Жыл бұрын

    영상 봐주셔서 감사합니다 :) 질문에 답을 드리자면,, >> 도메인이 같아야한다는게 FK와 PK 가 같은 테이블 내에 있어야한다는 뜻인가요?? 아니요, 그런 의미는 아닙니다 도메인은, 이해하기 쉽게 설명하면, type을 떠올리시면 됩니다 물론 도메인과 type은 다르지만 직관적으로 이해하기에는 type이라고 생각하시면 이해하시기 편할거에요 도메인에 대한 부분은 (이미 보셨지만) 04:39에 있으니까요, 이 부분을 참고하시면 조금 더 도움이 될 것 같습니다

  • @ddddsdasdas

    @ddddsdasdas

    Жыл бұрын

    @@ez. 해당 부분의 설명에서 fk와 pk의 도메인이 같아야한다고 말씀하셨는데, fk의 attribute는 null이 허용되는데, fk와 pk가 같은 도메인을 가진다고 할 수 있나요?, 그렇다면 null은 도메인에 포함이 안되는 값인가요?

  • @pandakundi9496
    @pandakundi94964 ай бұрын

    Domain은 그럼 테이블의 컬럼을 뜻하나요?

  • @ReadingKing1
    @ReadingKing1 Жыл бұрын

  • @ez.

    @ez.

    Жыл бұрын

  • @jay_choi429
    @jay_choi429 Жыл бұрын

    다 보고 정리하는데 2시간 정도 걸렸습니다 ㅜㅜ .. 20분짜리 영상이 너무 기네요...ㅎㅎ

  • @ez.

    @ez.

    Жыл бұрын

    흐억 고생하셨습니다 ㅠㅠ 영상 내용들이 진짜 엑기스만 알차게 꾹꾹 눌러 담은 거라서 앞으로도 계속 비슷할거 같아요 ㅠㅠ 제 개인적인 추천은, 정리하시다가 지치시면 안되니까 자세하게 보다는 키워드 위주로 정리하고 이어지는 영상들의 키워드들이 어떻게 연결되는지 점과 점을 연결하는 느낌으로 정리하는 것도 좋지 않을까 싶습니다 여하튼 항상 응원합니다!! 화이팅!!!

  • @turtlered9966
    @turtlered99662 жыл бұрын

    이전 DB영상에서 말씀하셨던 Entity 와 이번 영상의 Domain이 혹시 차이점이 있을까요??

  • @ez.

    @ez.

    2 жыл бұрын

    넵~ 설명드리자면 entity는 개체라는 뜻을 가지는 개념인데요, 유형 혹은 무형의 구별되는 정보 단위라고 이해하시면 될 것 같아요 이번 영상에서 다룬 relational data model에서 entity에 대응되는 개념은 relation이라고 보시면 될 것 같고요, 그럼 domain은 무엇이냐면 값들의 집합입니다. 그리고 domain이 relation에서 어떤 역할로 혹은 어떤 목적으로 쓰이는지를 나타내는 것이 attribute죠. 참고로, "attribute는 relation의 속성을 의미하고, attribute는 이 attirbute가 가질 수 있는 값들의 집합(즉, domain)과 짝을 이룬다"라고도 정의할 수도 있는데요, 이렇게 정의하면 어쩌면 attribute가 domain과 1대1로 매칭되는 것처럼 잘못 인식될 수도 있겠더라구요. 그래서 5:42 부분에, 핸드폰 번호 집합을 나타내는 phone_numbers라는 domain이 서로 다른 목적으로(혹은 역할로) 사용되는 예를 넣어둔 것이기도 합니다. 그래서 하나의 domain이 서로 다른 목적을 가지는 여러 attributes와 연결될 수 있다는 것을 보여드리고 싶었죠 relational data model이 수학 이론을 기반하고 있고 여러 유사한 개념이 관점에 따라 다르게 존재하다 보니 개념을 설명할 때 쉽게 설명하기가 난이도가 좀 있네요ㅠㅠ 저도 영상찍고 나서도 제 설명에 아쉬움이 남았는데 다음 번엔 좀 더 명확히 잘 이해되실 수 있게 설명해 볼게요 :)

  • @turtlered9966

    @turtlered9966

    2 жыл бұрын

    @@ez. 아하 그렇다면 학생의 정보를 담은 relation이 있다고 가정했을때 "학생"은 Entity, 학생의 이름를 "영어 이름"과 "한자이름"으로 나누어 기록한다고 가정했을때 각각 Attributes가 될수 있고, 이 Attributes의 공통된 집합인 "학생의 이름"을 Domain이라고 이해하면 되겠군요 언제나 좋은 설명 감사합니다

  • @ez.

    @ez.

    2 жыл бұрын

    @@turtlered9966 네 정확하십니다~👍 여기에 좀 더 덧붙여 보자면, domain도 정의하기 나름이라서 만약에 domain을 영어 이름 집합과 한자 이름 집합으로 따로따로 정의했다면, Student relation의 "영어_이름" attribute와 "한자 이름" attribute는 각각 "영어 이름 집합" domain과 "한자 이름 집합" domain으로 짝지어질 수 있겠죠~ 그리고 "영어 이름 집합" domain과 "한자 이름 집합" domain은 다른 relation의 attribute와도 연결될 수 있겠죠. 가령 Professor relation에도 필요할테니까요 그래서 domain을 절 정의하는 것도 중요하다고 볼 수 있겠습니다 :) 열심히 공부하시는 모습 너무 멋지십니다! 항상 응원할게요~!

  • @chotnt
    @chotntАй бұрын

    면접대비 1일차..

  • @user-mo5sb7qz6k
    @user-mo5sb7qz6k6 ай бұрын

    수학 용어가 나오니까 어려워요..

  • @okcharles7
    @okcharles7 Жыл бұрын

    영어를 한국어로 명확히 표현할 수 없다면, 개념을 모른다는 건데.. 릴레이션, 릴레이셔널, 인테그리티, 콘스트레인, 스키마.. 유노와람셍?

  • @ez.

    @ez.

    Жыл бұрын

    안녕하세요 :) 기본적으로 개념 용어들은 영어 단어 그대로를 살려주는 것을 원칙으로 하고 있습니다 (그게 더 장점이 많다는 게 개인적인 생각이라서요) 그래서 이 부분은 양해를 부탁드릴게요~ 😉

  • @user-dn7kr2wq8k
    @user-dn7kr2wq8k10 ай бұрын

    감사합니다

Келесі