Sari la conținut
Academia PythonAcademiaPython

4.3 Diagrama ERD și maparea la modelul fizic

Concept nou și exemplu

ERD (Entity-Relationship Diagram) e desenul: dreptunghiuri pentru entități, romburi pentru relații, linii pentru legături, cu cardinalitățile pe linii.

Maparea la modelul fizic (SQL):

  • Entitate → CREATE TABLE
  • Atribut → coloană
  • Cheie primară → PRIMARY KEY
  • Relație 1:N → cheie externă în tabela "N"
  • Relație M:N → tabelă nouă cu două chei externe
python.py
# Generam automat instructiunile CREATE TABLE
# pornind de la o descriere simpla a entitatilor (mapare ERD -> SQL)
entitati = {
"Student": {"id": "INTEGER PRIMARY KEY", "nume": "TEXT NOT NULL"},
"Curs": {"cod": "TEXT PRIMARY KEY", "denumire": "TEXT NOT NULL"},
}
def genereaza_create_table(nume_tabel, coloane):
linii = ", ".join(f"{col} {tip}" for col, tip in coloane.items())
return f"CREATE TABLE {nume_tabel} ({linii});"
for tabel, coloane in entitati.items():
print(genereaza_create_table(tabel, coloane))

La mapare, ordinalitatea contează: pentru 1:N, cheia externă merge în partea "N" (cea cu multe).