Mielőtt megvitatnánk a logikai és a fizikai adatmodell közötti különbséget, tudnunk kell, mi az adatmodell. Az adatmodell egy reprezentáció, amely leírja az adatokat és a közöttük fennálló kapcsolatokat egy adott folyamat során. Az adatmodell alapvető elem az adatbázis-tervezés során. A logikai adatmodell nagyon absztrakt és magas szintű adatnézet, ahol az entitásokat, a kapcsolatokat és a kulcsokat azonosítják. Független az adatbázis-kezelő rendszertől (DBMS). A fizikai adatmodell a logikai adatmodellből származik, ahol megmutatja, hogy a táblák és oszlopok hogyan strukturálják a valódi fizikai adatbázist. A fizikai adatmodell tehát a használt adatbázis-kezelési rendszertől függ.
A logikus adatmodell nagyon magas szinten írja le az adatokat és a kapcsolatokat. Ez nem foglalja magában az adatok fizikai ábrázolását az adatbázisban, hanem nagyon elvont szinten írja le. Alapvetően magában foglalja az entitásokat és a közöttük fennálló kapcsolatokat, az egyes entitás tulajdonságaival együtt.
A logikai adatmodell tartalmazza az egyes entitások elsődleges kulcsait, valamint az idegen kulcsokat is. Logikai adatmodell létrehozásakor az első entitásokat és azok kapcsolatait azonosítják a kulcsokkal. Ezután azonosítják az egyes entitásokat. Ezután sok-sok kapcsolat megoldódik és normalizálódik. A logikai adatmodell független az adatbázis-kezelő rendszertől, mivel nem írja le a valós adatbázis fizikai felépítését. Logikai adatmodell megtervezésekor nem formális hosszú nevek használhatók az entitásokhoz és attribútumokhoz.
A fizikai adatmodell leírja, hogy az adatok valóban hogyan helyezkednek el az adatbázisban. Ez magában foglalja az összes tábla és az azokban lévő oszlopok meghatározását. A táblázat specifikációja részleteket tartalmaz, például a tábla nevét, az oszlopok számát, az oszlop specifikáció pedig az oszlop nevét és az adattípust. A fizikai adatmodell tartalmazza az egyes táblák elsődleges kulcsait, valamint bemutatja a táblák közötti kapcsolatot idegen kulcsokkal. Ezenkívül a fizikai adatmodell korlátozásokat tartalmaz az adatokra és az összetevőkre, például triggerekre és tárolt eljárásokra.
A fizikai adatmodell az alkalmazott adatbázis-kezelő rendszertől függ. Tehát a MySQL fizikai adatmodellje különbözik az Oracle-hez rajzolt adatmodelltől. Amikor a fizikai adatmodellt logikai adatmodellből hozzák létre, az első entitásokat táblázatokká alakítják át. A kapcsolatokat ezután idegen kulcskorlátokká alakítják át. Ezt követően az attribútumokat minden táblázat oszlopává alakítják.
• A fizikai adatmodell leírja az adatbázis fizikai szerkezetét. A logikai adatmodell magas szintű, amely nem írja le az adatbázis fizikai felépítését.
• A fizikai adatmodell az alkalmazott adatbázis-kezelő rendszertől függ. A logikai adatmodell azonban független az alkalmazott adatbázis-kezelési rendszertől.
• A logikai adatmodell tartalmaz entitásokat, attribútumokat, kapcsolatokat és kulcsokat. A fizikai adatmodell táblázatokat, oszlopokat, adattípusokat, elsődleges és idegen kulcskorlátozásokat, indítókat és tárolt eljárásokat tartalmaz.
• A logikai adatmodellben hosszú nem formális neveket használnak az entitásokhoz és attribútumokhoz. A fizikai adatokban azonban a táblázatnevekhez és az oszlopnevekhez rövidített formális neveket használunk.
• A logikai adatmodell először a leírásból származik. Ezután csak a fizikai adatmodell származik.
• A logikai adatmodell normalizálva van a negyedik normál formába. A fizikai adatbázis modelljét deformálják, ha szükséges, hogy megfeleljen a követelményeknek.
Összefoglaló:
A logikai adatmodell egy magas szintű adatmodell, amely leírja az entitásokat és az adatok közötti kapcsolatokat. Ez magában foglalja az egyes entitás attribútumait és kulcsait. Ez független az alkalmazott adatbázis-kezelési rendszertől. Másrészt a fizikai adatmodell a logikai adatmodell alapján származik, és magában foglalja az adatbázis felépítését, beleértve a táblázatok, oszlopok és a kulcskorlátozások specifikációját. Ez a modell az alkalmazott adatbázis-kezelési rendszertől függ.