3 ms·
- You cannot have a good database design without understanding the business requirements first - Designing the code around the database leads to cleaner design
by taffer 5y ago
- You cannot have a good database design without understanding the business requirements first
- Designing the code around the database leads to cleaner designs than doing it the other way around
- Almost all columns should be NOT NULL
- EXPLAIN helps you understand what the database does under the hood
- dangerface 5y ago> Designing the code around the database This is great advice > Almost all columns should be NOT NULL Can you give your reasons for this? I never really understood the point of null tbh
- bwh2 5y agoA few things I've seen with null values: * You're storing multiple types of data in the same table (often paired with a column indicating type). Some types have nulls in a column, other types have non-nulls. * You've created an arbitrary limit on the data. Ex: a books table with author1, author2, and author3 columns. * You add complexity to your queries making them less maintainable. For instance, you might start injecting COALESCE, IS NOT NULL, empty string checks, etc. all over the place. * You need to be more careful with math. Ex: what is null + 10? Null isn't universally bad, but it comes with issues you need to be aware of.
- dangerface 5y agoGood reasons I try to give all my columns a default and have been trying to cut down on the use of null in general. More when programming in for example javascript the multiple null thing really annoys me is it null, NAN or undefined or "" who knows, so much conditional logic to arrive at nothing lol.
- praveenweb 5y agoAgreed with all 4 points. EXPLAIN ANALYZE output is cryptic enough for beginners to get any meaningful information out of it. Your thoughts on where to get started as a frontend developer?