Database Normalisation: Third Normal Form

  Рет қаралды 159,065

Computer Science Lessons

Computer Science Lessons

Күн бұрын

Пікірлер
@breefuller3124
@breefuller3124 5 жыл бұрын
Thanks for using the same example in all three videos
@ezeakorosalyn1186
@ezeakorosalyn1186 5 жыл бұрын
That was the best.... Unlike others I saw
@DeadshotGaming-rl4mb
@DeadshotGaming-rl4mb 4 жыл бұрын
Seriously! Much easier to understand this way
@michaelbruno4909
@michaelbruno4909 5 жыл бұрын
Love these videos. Very helpful for explaining normalization. They're much easier to understand than most videos out there. It's also nice to see some humor thrown in.
@paoloberg70
@paoloberg70 4 жыл бұрын
I honestly admit after hours spent on searching for videos about database normalisation, that this is the clearest one that i found. Congrats and thanks again, you saved my day. I finally got a good understanding of the topic.
@jeffreytello589
@jeffreytello589 4 жыл бұрын
best explanation of normalization on the internet! thank you
@ComputerScienceLessons
@ComputerScienceLessons 4 жыл бұрын
Thank you for saying so. :) KD
@TidusfromZanarkand
@TidusfromZanarkand 3 жыл бұрын
Quality examples, simple and clear explanations in all 3 videos about Normalization. Thank you, great work friend!!
@sanketkoli8641
@sanketkoli8641 3 жыл бұрын
You are the GOD(Greatest of DBMS). No other youtube video could explain Normalization in a way that you did. Really feeling confident now. Thanks a ton! :-)
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
You are very kind. :)KD
@sanketkoli8641
@sanketkoli8641 3 жыл бұрын
@@ComputerScienceLessons Thankyou :-) Could you Please post a Boyce Codd Normalization explanation too? I understood the 1NF, 2NF, 3NF, thanks to your video. But I am unable to understand BCNF(mainly the "multi-valued dependency" concept) Thanks for your help bro :D
@1989Bismillah
@1989Bismillah 5 жыл бұрын
Simple and straight forward, thank you!
@srividia1
@srividia1 2 жыл бұрын
Excellent explanation without unnecessary jargon. Thank you.
@philipmarno8730
@philipmarno8730 2 жыл бұрын
Thank you for explaining this in such a consistent approach. Great set of videos.
@ComputerScienceLessons
@ComputerScienceLessons 2 жыл бұрын
You're very welcome :)KD
@jeneydani
@jeneydani 2 жыл бұрын
with this the second normal form became also clearer, most understandable videos that i found, thank you
@georgefirth5631
@georgefirth5631 3 жыл бұрын
This is an excellent deconstruction and has really cleared things up, thank you!
@theletterpurple6228
@theletterpurple6228 4 жыл бұрын
this nf series of videos is my go to when i need help with db schema. its explained so clearly
@jray1429
@jray1429 2 жыл бұрын
You did a great job! Thanks for your work. I agree about how effective it was to use the same examples in the 3 videos. That helped to normalize the videos with the normal form number being the key 😅
@ComputerScienceLessons
@ComputerScienceLessons 2 жыл бұрын
You are most welcome :)KD
@withyuva
@withyuva 4 жыл бұрын
Best video on the topic, period. I wonder why other videos have more views than this one.
@ComputerScienceLessons
@ComputerScienceLessons 4 жыл бұрын
Thanks for the lovely comment. I should probably put more effort into publicising my channel - but it is growing organically. Please spread the word. :)KD
@wijn_za
@wijn_za 3 жыл бұрын
@@ComputerScienceLessons Hear, hear. Thank you for this!
@ezeakorosalyn1186
@ezeakorosalyn1186 5 жыл бұрын
God bless you immensely for this... You're really a good teacher
@ComputerScienceLessons
@ComputerScienceLessons 5 жыл бұрын
Really appreciate the comment. Thanks :) KD
@monalimhetre4089
@monalimhetre4089 3 жыл бұрын
thank you for explaining in detail with examples and in simple words.
@mohaklondhe
@mohaklondhe 2 жыл бұрын
Youre welcome
@emsdy6741
@emsdy6741 5 жыл бұрын
Thanks a lot. It really helps me in understand those three normal form. Please make also for BCNF... I really had a hard time understanding this concept BCNF Thank you.
@aventador1049
@aventador1049 2 жыл бұрын
Best Normaization video in the universe for night before exam.
@lordm5720
@lordm5720 3 жыл бұрын
This is an amazingly simple explanation. Thank you
@hongkyulee9724
@hongkyulee9724 2 жыл бұрын
Really thank you. Your videos are always so amazing.
@Urquell-ty4eg
@Urquell-ty4eg 5 жыл бұрын
Great video series, thank you very much!
@rufina305
@rufina305 3 жыл бұрын
Thank you so very much. I was searching for one examplé tha fits 1,2,3 normal forms and luckily I found yours. Thanks much again
@nakonachev1407
@nakonachev1407 2 жыл бұрын
Greatly explained, thank you!
@hugoirwanto9905
@hugoirwanto9905 3 жыл бұрын
Crystal clear!
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
Thank you :)KD
@nataliats114
@nataliats114 4 жыл бұрын
Thank you for the easy to understand videos
@ComputerScienceLessons
@ComputerScienceLessons 4 жыл бұрын
You're welcome. :) KD
@dominicmorris819
@dominicmorris819 3 жыл бұрын
I'm confused. In your 2NF video, you say "a table should only contain data about one type of thing" to be in 2NF. But in Courses (at 3:30) it clearly contains data about two different things - Courses and Teachers. So I don't understand how it is in 2NF? I'm lost on the difference between 2NF and 3NF.
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
Hi Dominic. In this specific example, each course has its very own teacher and there are no teachers here that teach more than one course, so, arguably, the information about each teacher is actually information about the course. If however, Mr Einstein taught Chemistry AND Physics, then the Courses table would not be in 2NF. You could also argue that since some of the courses have the same Fee, then the Fees should be in a different table to meet the criteria for 2NF. In the past I have seen problems in which the data were totally abstract (letters and numbers only, and column names like Col1, Col2, Col3, etc.). Theoretically, you can normalise such tables by following a set of rules. I must say however (at the risk of muddying the water for you), I see little real world value in abstract problems like this. It's more important to know your data and what you want to do with it; common sense and and instinct play an important role in database design (someone will probably object to that statement!). You are therefore correct to say that a teacher is a different thing and belongs in its own table. A final point, a fully normalised database is not always the best solution to a problem; take a look at NoSQL. :)KD
@realskater54211
@realskater54211 2 жыл бұрын
U da man. Thanks for the informative video 💪🏽
@ComputerScienceLessons
@ComputerScienceLessons 2 жыл бұрын
Thank you. You are most welcome :)KD
@Wes-Tyler
@Wes-Tyler 4 жыл бұрын
You have the best voice.
@ComputerScienceLessons
@ComputerScienceLessons 4 жыл бұрын
You are very welcome non breaking space :)KD
@xixi3302
@xixi3302 4 жыл бұрын
i have a question, you said the grade is drived from exam mark, and it is violated 3NF, and we need to create a new table: result. but what primary ID should we set for result? right now, i am doing my project, i have a table: BillingInfo (billingID, bookID, number_of_book, price), the price is drived from bookID and number of book, so i guess i need to seperate this into two tables, but i don't have any idea how to decomposite a new table
@AC-fi8ge
@AC-fi8ge 2 жыл бұрын
7:32 "Every student has a gender, but it doesn't really make sense to put genders in a separate table." Had a nice little chuckle out of that one... with the way multi-gender culture is going...
@franzbiberkopf9179
@franzbiberkopf9179 4 жыл бұрын
Soon we will be forced to put genders in a separate table as well, since people are starting to change them regularly as they change address :D. Thank you very much from Rome, it was a very beautiful tutorial!
@ComputerScienceLessons
@ComputerScienceLessons 4 жыл бұрын
You are probably correct. Thanks for the lovely comment. :)KD
@saidshikhizada332
@saidshikhizada332 3 жыл бұрын
great video! thanks.
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
You're welcome, and thank you :)KD
@agcagigas4443
@agcagigas4443 4 жыл бұрын
I can't find a video from your channel about BCNF. Are you able to create one, please?
@saumyasingh7216
@saumyasingh7216 2 жыл бұрын
Awesome video
@ComputerScienceLessons
@ComputerScienceLessons 2 жыл бұрын
Thank you :)KD
@ranindugeekiyanage527
@ranindugeekiyanage527 2 жыл бұрын
Best Explanation. thanx bro❤
@ComputerScienceLessons
@ComputerScienceLessons 2 жыл бұрын
You're welcome :)KD
@chrisalbers1370
@chrisalbers1370 3 жыл бұрын
Life saver thank you!
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
You are most welcome :)KD
@latenews2024
@latenews2024 3 жыл бұрын
Great work
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
Thank you :)KD
@rustyspottedcat8885
@rustyspottedcat8885 Жыл бұрын
Maximizing information content (sentences) from given amount of data (words) derived by relational logic.
@ComputerScienceLessons
@ComputerScienceLessons Жыл бұрын
Appreciated :)KD
@dumdumbringgumgum2940
@dumdumbringgumgum2940 2 жыл бұрын
Thanks a lot 👏👏👏
@siddharthsasikumar4271
@siddharthsasikumar4271 4 жыл бұрын
Felt like watching a david Attenborough documentary.😍
@ComputerScienceLessons
@ComputerScienceLessons 4 жыл бұрын
Thanks for the complement :)KD
@shaneschwalger2482
@shaneschwalger2482 3 жыл бұрын
Thank you.
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
You're welcome :)KD
@BruceWayne-yj7bd
@BruceWayne-yj7bd 2 жыл бұрын
Wouldn't the last name dependent on the marital status, if its a female, therefore not be in 3rd normal form?
@ComputerScienceLessons
@ComputerScienceLessons 2 жыл бұрын
Debatably! I'm sure there are plenty of females who did not change their last name when they got married who would argue against that. :)KD
@anubhabbiswas4901
@anubhabbiswas4901 3 жыл бұрын
I have a question (excuse me if this is too dumb😅): Isn't the Last Name also dependent on First Name? For instance, if someone else has to be assigned the same id as Kevin Drumm, wouldn't we need to change both the last name and the first name? Shouldn't this also be a violation of 3rd normal form?
@jackc87
@jackc87 3 жыл бұрын
I want to take these courses with these professors.
@shehrozmalik5961
@shehrozmalik5961 3 жыл бұрын
Best Explanation
@Anteater23
@Anteater23 Жыл бұрын
Do attributes that are foreign keys have to follow the same rules?
@ComputerScienceLessons
@ComputerScienceLessons Жыл бұрын
Attributes that are foreign keys are not particularly special. Any attribute can be a foreign key.
@Anteater23
@Anteater23 Жыл бұрын
@@ComputerScienceLessons So a foreign key can be normalised out of a table?
@TheLordQuick
@TheLordQuick 3 жыл бұрын
Great examples! But unless you previously defined key and primary key in some nonstandard way, I believe your definition is slightly inaccurate. AFAIU wherever you said "primary key" you should replace it by "any candidate key", and then by a "non key" attribute you presumably mean a non-prime attribute, that is an attribute that is not part of any candidate key... because every attribute is at least part of the whole scheme as a superkey.
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
I see where you're coming from. However, I often find that colloquial language better aids understanding. Nuance comes later. :)KD
@shreenthasleem2820
@shreenthasleem2820 10 ай бұрын
Thank you sir
@ComputerScienceLessons
@ComputerScienceLessons 10 ай бұрын
You're welcome :)KD
@Cryptofins
@Cryptofins 3 жыл бұрын
Why do we not need a course ID in this case?
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
Because, in this scenario, the course title is unique and can therefore serve as a primary key. In practice, a course ID might be included because it can save confusion when you have similar course titles, and it's easier to quote when people make bookings.
@akeemovic
@akeemovic 3 жыл бұрын
Thanks very much.
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
You're welcome :)KD
@Cerv_guitars
@Cerv_guitars 5 жыл бұрын
so many ahh ha moments wish i found this before all the other videos that ive been scraping through.
@manilakid3
@manilakid3 3 жыл бұрын
He is an example of a Great Teacher. They are hard to come by. There are other videos on this very same topic that are not explained as well as this person does it.
@syaachan3533
@syaachan3533 4 жыл бұрын
Hi! I like your videos because its easy to understand. Im struggle to make a slides for my presentations and I'm also new in IT field huehue, but do you have a videos about the advantages of relational database?
@nadeeshaaravinda1372
@nadeeshaaravinda1372 4 жыл бұрын
I wonder why the courses table doesn't have any ID.
@ComputerScienceLessons
@ComputerScienceLessons 4 жыл бұрын
Hi Nadeesha. As long as a table includes a column with unique values, then this column can serve as the primary key. If the Course Title is always unique, this can be the primary key. If a COMBINATION of columns for any given record is always unique, then this combination can serve as a 'composite' primary key. What you choose for a primary key depends on the nature of the data. Having said that, I've worked with a number of organisations where database designers were encouraged to always include a surrogate primary key (a single column whose only purpose is to serve as a primary key). In this example, you would include a new CourseID column. This makes life easier for people programming the front end. :)KD
@JonHogg
@JonHogg 3 жыл бұрын
@@ComputerScienceLessons If the course title could change (e.g. from Mathematics to Maths) would that make it inelligable (or maybe just a poor choice of) primary key?
@newjade6075
@newjade6075 2 жыл бұрын
Thanks sir
@vimukthaariyasinghe8041
@vimukthaariyasinghe8041 2 жыл бұрын
there is already a partial dependancy as well. where course tittle, teacher id -> teacher name and teacher id -> teacher name. so it cannot pass through 2NF..correct me if i am wrong
@riccoc.6507
@riccoc.6507 2 жыл бұрын
OK thank you Bro makes sense
@snipo39
@snipo39 Жыл бұрын
would you please make a video on BCNF
@ComputerScienceLessons
@ComputerScienceLessons Жыл бұрын
I will try to do something soon. Busy at work at the moment. :)KD
@meshuganah1
@meshuganah1 4 жыл бұрын
2:26 "transient" should actually be "transitive" (I believe!)
@ComputerScienceLessons
@ComputerScienceLessons 4 жыл бұрын
You are quite correct - oops! (I will upload a fix)
@meshuganah1
@meshuganah1 4 жыл бұрын
@@ComputerScienceLessons thanks for the excellent video! I found it super helpful :)
@meow-pk5gq
@meow-pk5gq 2 жыл бұрын
Thank you
@erickabogo1818
@erickabogo1818 3 жыл бұрын
7:42 all 'The Simpsons' fans will see it
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
Doh!
@selinklnc4903
@selinklnc4903 11 ай бұрын
love it
@ComputerScienceLessons
@ComputerScienceLessons 11 ай бұрын
Thank you :)KD
@dhelmarxdancel2401
@dhelmarxdancel2401 3 жыл бұрын
Can i use noodles for making database?
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
You can do whatever you want! :)KD
@HUGODTHERO
@HUGODTHERO 4 жыл бұрын
the best
@ComputerScienceLessons
@ComputerScienceLessons 4 жыл бұрын
TY :)KD
@sterlingveil
@sterlingveil 4 жыл бұрын
That last example fails if the exam is graded on a curve. In that case, the letter grade is free to change independently of the exam mark.
@ComputerScienceLessons
@ComputerScienceLessons 4 жыл бұрын
Fair point. Horses for courses.
@throwaway-lo4zw
@throwaway-lo4zw 9 ай бұрын
Would fees not have its own table since there are duplicate fees, e.g. 1800 for Physics and 1800 for Chemistry. So a table called Fees, which has Fee ID (primary key) and fee (int) and hell... even Qualifcations could have its own table too. Actually, I think that might be 4NF...
@bigopzooka
@bigopzooka 8 ай бұрын
Wouldn't the Last Name have a transient dependency on the marital status? When someone marries they might take another last name ;)
@ComputerScienceLessons
@ComputerScienceLessons 8 ай бұрын
I think that depends on your politically correctness ;)KD
@moxie1855
@moxie1855 5 жыл бұрын
I saw a sherlock reference there
@ComputerScienceLessons
@ComputerScienceLessons 5 жыл бұрын
Elementary my dear Bi el
@jeevanjohal8194
@jeevanjohal8194 2 жыл бұрын
imagine being married while doing A levels lol
@ComputerScienceLessons
@ComputerScienceLessons 2 жыл бұрын
It depends who you imagine you are married to... :)KD
@ryank170
@ryank170 4 жыл бұрын
Bro where do you go to school where a 70 is still a B?
@ComputerScienceLessons
@ComputerScienceLessons 4 жыл бұрын
I mark hard. :)KD
@youssefnov9037
@youssefnov9037 4 жыл бұрын
Can you help me teacher???
@martonburanszki9537
@martonburanszki9537 2 жыл бұрын
You are wrong, the data must be in least the first normal form, it doesn't have to be in the second.
@ComputerScienceLessons
@ComputerScienceLessons 2 жыл бұрын
It depends on what you are trying to achieve. Indeed, you may not want your data normalised at all. :)KD
@michaelerwin8744
@michaelerwin8744 Жыл бұрын
In todays world I think it's inevitable to separate gender table on its own.
@NilakshMalpotra
@NilakshMalpotra 3 жыл бұрын
:D
@ComputerScienceLessons
@ComputerScienceLessons 3 жыл бұрын
:)KD
@chungus511
@chungus511 5 жыл бұрын
Database is such a fcking boring ****, but loved the video
@supercoolaks
@supercoolaks 6 ай бұрын
Poor example, it should not take 8 mins to state the 3NF and give a clear example smh
@ComputerScienceLessons
@ComputerScienceLessons 6 ай бұрын
nyl
The SQL SELECT Statement
8:56
Computer Science Lessons
Рет қаралды 17 М.
1st, 2nd and 3rd Normal Form (Database Normalisation)
11:42
Learn Learn Scratch Tutorials
Рет қаралды 462 М.
She made herself an ear of corn from his marmalade candies🌽🌽🌽
00:38
Valja & Maxim Family
Рет қаралды 16 МЛН
Database Normalisation: First Normal Form
7:27
Computer Science Lessons
Рет қаралды 116 М.
DBMS - Third Normal Form (3NF)
8:17
TutorialsPoint
Рет қаралды 60 М.
Learn Database Normalization - 1NF, 2NF, 3NF, 4NF, 5NF
28:34
Decomplexify
Рет қаралды 2,1 МЛН
5th Normal Form (5NF) | Join Dependency | Database Normalization
8:09
Studytonight with Abhishek
Рет қаралды 266 М.
How to do database normalization
21:42
BBarters
Рет қаралды 306 М.
Database Normalization 1NF 2NF 3NF
10:26
Jesper Lowgren
Рет қаралды 183 М.
MSCD600 Normalization
19:25
CCIS Faculty
Рет қаралды 45 М.
Database Normalisation: Second Normal Form
9:21
Computer Science Lessons
Рет қаралды 160 М.