Et Data Access Layer (DAL) i software er et lag i et computerprogram, der giver forenklet adgang til data, der er gemt i en eller anden form for vedvarende lagring, såsom en relationel database . Dette akronym bruges mest i Microsoft ASP.NET- miljøet.
For eksempel kan DAL returnere en reference til et objekt (i form af objektorienteret programmering ) med dets attributter i stedet for strenge felter fra en databasetabel . Dette giver dig mulighed for at oprette klient -side (eller brugerdefinerede) moduler med et højere abstraktionsniveau . Denne type model kan implementeres ved at skabe en klasse med dataadgangsmetoder, der direkte refererer til det relevante sæt af databaseprocedurer. En anden implementering kunne potentielt hente eller skrive indgange til eller fra filsystemet. DAL skjuler kompleksiteten af det underliggende datalager for omverdenen.
I stedet for at bruge kommandoer som "create", "delete" eller "update" på en bestemt tabel i databasen, kan en klasse og flere lagrede procedurer oprettes i databasen. Disse procedurer kan kaldes fra en metode inden for en klasse, der returnerer et objekt, der indeholder de anmodede værdier. Eller opret, slet og opdater kommandoer kan udføres i simple funktioner som registerUser eller loginUser gemt i dataadgangslaget.
Desuden kan forretningslogikmetoder fra applikationen tilknyttes dataadgangslaget.
Så for eksempel, i stedet for at lave en databaseforespørgsel for at hente alle brugere fra flere tabeller, kan en applikation foretage et metodekald fra DAL for den applikation.
Værktøjer til objektrelationel kortlægning ( ORM ) eksponerer datalag på en måde, der følger Active Record - modellen.
ORM/Active record-modeller er populære i web-frameworks.