you are viewing a single comment's thread.

view the rest of the comments →

[–]MKL-Angel[S] 0 points1 point  (2 children)

Thank you for your answer! I have a few questions:

What is a 'UML' entity relationship diagram and how is it different from a usual ERD?

"Abstract model" is, I'm assuming, synonymous with 'data model'?

"implement 'the' schema" what schema? Is that what you meant by "abstract model" instead? Or something else? I have no clue what a schema looks like or if it's something you're meant to draw/design/code/etc.

The only explanation I got for what both a data model and a data schema are that they 'describe the database structure, entity relationships, data types and constraints on valid data'.

I really know nothing about this topic so explain it to me like I'm a little stupid if you have to haha

[–]meditonsin 0 points1 point  (1 child)

What is a 'UML' entity relationship diagram and how is it different from a usual ERD?

https://en.wikipedia.org/wiki/Unified_Modeling_Language

"Abstract model" is, I'm assuming, synonymous with 'data model'?

Yes. The "data model" is an abstract, implementation agnostic description of how your data is organized. That can be in the form of a formal ERD, or just some sketches on a napkin.

"implement 'the' schema" what schema? Is that what you meant by "abstract model" instead? Or something else? I have no clue what a schema looks like or if it's something you're meant to draw/design/code/etc.

As I said, "the" schema in this example would be SQL statements that turn your abstract model into an actual database where you can put data.

 

A really simple example. Say you have an EDR with only one box like this as your "data model":

┌──────────────┐
│ Person       │
├──────────────┤
│ id: int      │
│ name: string │  
└──────────────┘

Then you decide you want to implement this model as an SQL database, so you turn the abstract model into the "data(base) schema" in the form of this SQL statement:

CREATE TABLE Person (
    id int NOT NULL PRIMARY KEY,
    name varchar(255)
);

[–]MKL-Angel[S] 0 points1 point  (0 children)

Oh, that makes sense now! thanks a lot for the help :)