This phrase from Wikipedia left me confused:
The relational model (RM) is an approach to managing data using a structure and language consistent with first-order predicate logic.
The concept of structure is new to me, as I don’t have a formal math background. According to Wikipedia:
In universal algebra and in model theory, a structure consists of a set along with a collection of finitary operations and relations that are defined on it.
When I try to apply this definition to the relational model, I'm having trouble mapping the elements I know (tables, operations, constraints) to these mathematical categories:
Set: I understand that the set in the structure could be made up of tables (or relations, but not conventional set theory relation, but Codd relations) in the relational model. Each table, then, would be an element of this set.
Finitary Operations: The finitary operations seem to correspond to relational algebra operations (like selection, projection, union), which act on these tables to produce new ones.
Relations within the Structure: This is where I’m uncertain. First of all, I have not mapped Codd's relations (i.e., tables) to the concept of the conventional relation in math because as I stated in point 1 I understand they are not exactly the same. As a consequence, I've tried to associate the concept of relation within a structure with that of restrictions in the relational model. Although I'm afraid this doesn't make sense...
Note I don’t have the time to build a stronger math foundation, though I hope to do so in the near future. If my question reveals a high level of misunderstanding due to my limited background, I’d welcome any advice on whether it’s more practical to focus on using the relational model rather than fully understanding its theoretical basis until I've actually learnt the math concepts upon it is built.
Does this mapping correctly apply the concept of "structure" to the relational model, or am I missing something fundamental here?