When we talk about tables on computers, the first thing that a lot of people think is a beautiful Excel table.
But… there are other tables, these other tables are basically the backbone of a lot of apps, is where you write all the information.
To create these tables, usually, the first approach would be to try to do something similar to excel, a lot of fields, and a lot of repeated information, and then if required, try to make it more readable.
But there are more efficient methods for this, like using UML diagrams to understand our system (Yes, the UML diagrams from the last posts).
There is one diagram I’m talking about, the Class diagram:
The class diagram represents how the data is used in the system; as you can see, there is a bunch of tables like (single-column) blocks; these are the classes.
Each row in the classes represents an attribute; these are elements that describe the class itself. Besides this, you can also see lines connecting everything, these represent the relationship between the classes.
Creating this diagram is not that simple but is a great exercise to abstract the information and understand it before working with it. To create the abstraction, some rules make everything easier (is like a cooking recipe), this is called normal forms, check this video if you want to know more:
After having the diagrams ready is time to pass them to the computer, there are to main technologies for databases (the tables administrator), SQL and no-SQL. It may sound funny the second one but is basically that a no SQL standard, and is called that way because it doesn’t have the main attribute of SQL, strong relationships.
But this main difference doesn’t make it difficult to implement the tables in either kind systems, it only matters if you have lots of relationships, you may need a fast system in this so SQL may be the best option, in another case it may be no-SQL.