Database Keys Made Easy - Primary, Foreign, Candidate, Surrogate, & Many More
Вставка
- Опубліковано 30 лип 2024
- An easy-to-follow tutorial covering the whole gamut of RDBMS keys: primary keys, candidate keys, superkeys, alternate keys, foreign keys, surrogate keys, natural keys, simple keys, composite keys, compound keys, and intelligent keys. Featuring lots of examples and a focus on the design process.
0:00 Introduction
0:53 Primary Keys
3:29 Candidate Keys
6:09 Superkeys
7:57 Alternate Keys
8:49 Foreign Keys
10:39 Surrogate vs. Natural Keys
16:55 Composite vs. Simple Keys
18:02 Compound Keys
19:01 Intelligent Keys
CONTENTS
0:00 Introduction
0:53 Primary Keys
3:29 Candidate Keys
6:09 Superkeys
7:57 Alternate Keys
8:49 Foreign Keys
10:39 Surrogate vs. Natural Keys
16:55 Composite vs. Simple Keys
18:02 Compound Keys
19:01 Intelligent Keys
Come on man!! Please do more videos. 😢
please add Ads to incentivize yourself to do this more the world needs this.
As a CS student, these videos are far superior to my uni learning material. well done
Same, what is it about universities and refusing to actually explain things in a relatable way? 😅
@@joshualee7002 question of the century
@@joshualee7002 Idk if it's the same everywhere, but in the US they already have your money what do they care if you don't understand the classes?
Common University L
They really are
Why does this channel have so few subscribers? Your videos are very good
100% agree. The content, pace, diagrams and examples are extremely well thought out and presented. Adding one subscriber now!
I just increased the subscriber count.
@@rudiklein
Me too!
Because its not Indian English
Even if my 10 year old brother watches these, he will understand the keys for sure. Please keep going and post more videos about database.
I have been modeling databases for years, to help me generate reports. I'm an on-the-job trained database builder. For the first time the concepts of all the key types are now clear to me. Thanks.
Really glad I could help.
Exceptionally well made content from a naturally gifted instructor. You are helping people like me make it to the end of school in one piece and what you're doing is so valuable. Thank you.
This is fantastic content! Would be great to see your take on a process of designing a database from start to end.
This is easily going to be my recommendation to my friends and peers who need a recap incase of interviews. So well put together. Most people don't bother going into it with examples and caveats the way you did :)
Damn!
I was so tensed about these concepts.
YOU EXPLAINED IT REALLY WELL !
I just can't express my thanks to you in words !
You have a very easy-to-follow style and a concise, interesting way of explaining. You truly decomplexify this stuff. Thanks.
I thank the algorithm gods for putting you in my feed
Same bro
Smooth. Seems like you framed a new key for learners - A key to success! Great video! 💯👏
All of your videos have been super helpful for me. You explain stuff really well and I've had a hard time finding good resources. Would you ever consider making a video on entity relationship diagrams and crow foot notation?
we need this
I've worked with computing for 40+ years, much of it with relational data in one form or another. And yet, I've learned some new things from your videos. Thank you for some great content presented in a clear and useful way.
Fantastic video! Everything I've watched so far from your channel has been excellent.
Really good breakdown. I really liked the illustrated tables to make the concepts clear.
A flawless video on this topic, inspiring and exemplary. Well done.
Thanks so much for this video! I just started my first BI job after studying in a different field. Your videos have been super useful. :)
I watched the normal form clarification video by you and now I am here and havent yet finished it... but I am compelled to give you my gratitude for making all things DB so simple. Thank you for that!!! 🙏🙂
Thank you very much for this content! Very very clear and well explained. Fantastic introduction to these concepts!
A video on relationship types would be good 👍🏼 you have a great way of making a complex things seem easy. Thanks!
Another great video with great examples, thanks a lot
You are a good man. May god bless your soul.
I hope this videos help a lot of people thats truggle to make good relational database designs.
Hi there, loved all you videos..Thank you .. Looking forward to more such videos.
Clear and precise explanation! Thank you!
I like really the simple explanations :) Very well done, this stuff isnt easy. As suggestion for more topics: Design Patterns, and possibly anti patterns? Or if databases are more your thing (I've read some of your replies) Maybe some examples how to manage a lot of data? Various DB systems, or performance tricks and why those work? Or some 'under the hood' explanations as to *why* some things work like they do? Looking forward for more video's :)
Dang! These are wonderful and fantastic!
purely amazing.
for sure I'm gonna rewatch this .
I teach online classes on Cybersecurity and my students often get tripped up by these concepts. I have reviewed a lot of videos and this is by far the best one I have seen. Keep it up!
easy to follow , very well illustrated and crisp, with real world examples and applications and with associated pros and cons too.. comfortably demistifying👍🏻👍🏻 .
Really great video!
This was really helpful! Explained it in an easy to understand manner, with great examples!
Thanks! Yep, the idea was to make the explanations as easy and accessible as possible for people. Glad the video helped you.
I learn more with this way of teaching. Thanks. Greetings from Brazil
Perfectly explained. Thank you
Amazing and intuitive explanation
Awesome job!
Thanks for this great bunch of well put together Information.
For intelligent keys I have three rules I follow.
- only use it, if there is a real (and known) value in the usage of the ID later
- only use it, if you can‘t achieve this value on a better way (e.g. no suitable field in a given database available)
- only use inherent and unalterable information in this id (as you mentioned e.g. date of birth.)
If you have to use this method with a changable information, try to make it an unalterable property. E.g. if you put the information in a materialnumber if you buy it or manufacture it (m-123, b-739…), think of creating a new dataset when this changes (like a buy and a manufacture version) but keep in mind that you might have to maintain both datasets or think of setting an expired flag on the old one.
As you can see this almost always opens a can of worms.
can you create more content please? Your animation and way of explaining is superb!!!
Thank you so much for being able to explain these concepts in a succinct and clear manner. I wish you were my professor instead! Cheers
Keep uploading mate, we're all waiting for you :)
Working on it!
Thank you! Much appreciated!
I like this video, calm and informative… please more like it
Brilliant! Well said!
Thank you for this very clear explanations. I like your videos! I would be interested to see a deep dive into (different kinds of) joins
Much appreciated! A video on joins is a good idea, I might create one of those at some point.
Thank you so for this. Remain blessed.
Your way of explanation is getting a new subscriber..
OMG! I finally found a great video explaining this. There are so many videos that they are far less effective.
Amazing!!! very good!! thanks!
Thanks, it's very helpful to understand
Upload more videos please, these are well-explicated even for a non CS background student to comprehend
I have learnt something, thank you.
Thanks. This is pretty good and interesting
Have discovered you today in watching ur tutorials while previously i was struggling from others as i thought to myself that my understanding is so poor nearly i lost interest but now am happy have meet you
That is great to hear - I'm pleased that these tutorials have helped you so much.
thank you very much...superb stuff
this is extremely useful, thank you so much. my database flashcard collection has been replenished
thanks, you're awesome. May God bless you
Thank you very much for explaining it in such beautiful way, waiting for your next videos and also can you please make a video on difference between model and schema, I've gone through many websites but unable to grasp the difference.i strongly believe u can decomplexify.
Once again thanks for providing amazing content.
Thank you very much!
Thanks , it's really helpful
Very Good!
God bless you...i needed this for exams
such a great video
Suggestions - star schema, snow flake schema, conformed dimensions. Great videos!
Very well explained
Super awesome :)
Clearly explaining!
You are too good!!!😃👍
You are awesome!
Thank you!
Amaaazzziinng!
Dude your videos are great, make more? :)
Thanks a lot!
This is a great video, I could understand a lot of things that I was seeing and never asked before because I thought they were that way at random. I would like to see more videos on DAX as I find it challenging but I have the conspiracy theory that giving trainings on DAX can infringe copyright somehow. .The complex thing about DAX is how DAX behaves depending on the context of where it's used within Power BI and it's differences from regular Excel Power Pivot DAX models
FINALLY I understood, thanks)
very very good video. 👍
Excellent video,waiting for the latest update
Thanks!
I just subscribed without delay
I hope that you will have more videos in the future.
Comment for algorithm - great content
Thank you
well explained
amazing breakdown, good examples as well, thanks for putting your time into this. Just curious are you a backend developer? what did get you interested in the database design
Thanks! Actually my background is in business / systems analysis, translating user requirements into solutions. Just purely by chance, I got assigned to a lot of "data" projects and ended up specializing, without ever really intending to, in data modelling and in writing extract/transform/load (ETL) functional specs - especially in the context of data warehouses. There's a side of me that's very logical and precise and also very focused on communicating meanings clearly, all of which maybe accounts for why I find database design to be an interesting pursuit (& also why I like the challenge of finding ways to explain the concepts to others!)
So good!\
man they should just play your videos in my dbms uni course ahah
a hero to all cs students
Your last Intelligent Key example is basically national identity number in Poland called PESEL :)
Came for the basic example, stayed for the quadcopters and sentient teddy bears
More videos pleaaase!!!!
very usefull
14:04 hmm niice example (of caution with surrogate keys)
can you make a video on different authorization in a database, on the basis of the work the user does. This confuses me when using an orm for my project. New to this and trying to understand more. Great video 👍.
hi, the video was very helpful. Btw, i'm not sure if i understood well the difference between superkeys and composite keys. Superkeys are a type of composite keys that can consist also of one attribute while the other must be 2+?
This man is single handedly saving my exam mark lol
Wow !
Have you already considered enabling the Super Thanks button? You totally deserve some extra credit!
Good suggestion - have enabled it now!
Can we have a detailed visual explanation of Codd's 12 rules?
I really enjoyed your videos, by the way, would you be so kind to provide all book sources you used for this? Thanks!
Glad you've been enjoying the videos! Much of the video is based on information that's available from a variety of different sources so it's not always easy to attribute the info to any particular book or books. Having said that, a couple of books by Chris Date that I was flipping through around the time I made the video are "Database Dreaming Volume II: Relational Writings Revised and Revived" and "Database in Depth".
Thank you for a lovely video. You explained how keys work very well. Can you talk more about best practise? For example you spoke about using natural keys instead of surrogate keys. This is possible, but is it best practise?
Glad you liked the video! There are different schools of thought on this, but in my opinion you should try to use natural keys where possible ... the only problem is that it's very often not possible! So in practice, you'll find yourself using surrogate keys quite a lot of the time. A good example of a situation where you probably can and should use a natural key is in representing currencies (US Dollars, British Pounds, etc.) as these have official ISO Currency Codes (USD, GBP, etc.) Cases like this where there's a consensus standard natural key convention that you'll always be able to rely on are not that common, but when you do come across such a case, you should go for the natural key - that's my view, anyway. There are also times where you yourself are designing the whole system, including the front end, and can invent your own convention regarding codes to be displayed to the user that will represent instances a particular type of thing - like let's say 'O' for 'Open' and 'C' for closed. These are natural keys and it's fine and good to use them.
@@decomplexify Thanks for your feedback. What about in terms of speed. If you used ISO currency codes as a primary key, and then had to share that across multiple tables, would it have an impact on speed (and memory, as it might use more memory), as opposed to a primary key with just int's? What is your take on that?
@@danieldinnie5003 No, it wouldn't make a noticeable difference in modern database technology.