Puoi accedere ai dati nei seguenti modi (supponendo che tu stia usando .NET) - tra gli altri:
(1) utilizzando ADO.NET (e LINQ)
(2) utilizzando ODBC (non consigliato se è possibile utilizzare altre opzioni)
(3) utilizzando T-SQL tramite ADO.NET
(3A) che utilizza T-SQL tramite LINQ
(4) utilizzando SQL Server CLR (codice C # sul lato server)
Il dibattito tra l'uso di (1) e (3) è un dibattito in corso, tuttavia, se non si hanno intenzioni di cambiare il database in un altro, è abbastanza comune programmare il livello del database in T-SQL. T-SQL è principalmente utilizzato per eseguire operazioni di base di creazione, lettura, aggiornamento ed eliminazione e l'elaborazione di trigger. A differenza del semplice ADO.NET, T-SQL può essere più sicuro poiché mantiene il codice SQL libero.
La maggior parte degli strumenti ORM genera codice per (1) o (4). Quindi il tuo strumento potrebbe influenzare la tua decisione.
Se hai una logica complessa e un calcolo intensivo o se richiedi diverse chiamate al database prima che la tua unità di lavoro sia completata, puoi usare (4).
Potresti essere interessato a saperne di più al seguente link:
link