Database / Mnesia basics Interview questions
What is a Mnesia record?
A Mnesia record is simply an ordinary Erlang -record, whose field names match a table's
declared attributes — Mnesia doesn't introduce a separate record concept of its own, it reuses the
language's existing record syntax as the shape of each row.
-record(person, {id, name, age}). Row = #person{id = 1, name = "Ada", age = 34}.
When you call mnesia:write/1 with a #person{} record, Mnesia inspects the
record's tag (person) to know which table it belongs to, and uses the first field
(id) as the primary key by convention. Because it's just a tuple under the hood, you can pattern
match on fields the same way you would with any other Erlang record.
More Related questions...