Read up on database normalization.
Database normalization is important because it ensures that you're not storing the same data in multiple places. Storing the same data in multiple places complicates updates and deletes, and means that you're running the risk of your data becoming inconsistent - where one table is telling you something, but another table contradicts it.
There are various targets in database normalization called "normal forms". Research them. The first three are quite easy to understand. It's generally a good idea to make sure your database conforms to 1NF, 2NF, and 3NF, and also Boyce-Codd normal form, which is a little harder to understand. Checking conformance to the higher NFs generally has limited benefits, and except in unusual circumstances, most 3NF databases tend to satisfy 4NF and 5NF anyway.
use Moops; class Cow :rw { has name => (default => 'Ermintrude') }; say Cow->new->name
|