TSQL diventerà inutile a causa di nuovi ORM? [chiuso]

-1

Introducendo LINQ to SQL, ho trovato me stesso ei miei colleghi sviluppatori .NET a passare gradualmente da TSQL a C # per creare query sul database. Entity Framework ha reso questo spostamento quasi permanente.

Ora sono passati quasi 2 anni da quando uso LINQ a SQL e LINQ alle Entità e non ho usato così tanto TSQL.

Ieri, un collega ha riscontrato un problema (ha dovuto creare un SP) e siamo andati ad aiutarlo. Ma tutti abbiamo scoperto che la nostra conoscenza di TSQL era diminuita di sicuro, e un semplice SP che a noi sembrava insignificante 2 o 3 anni fa, era una sfida da risolvere ieri.

Quindi mi è venuto in mente che mentre la vita di TSQL è collegata a SQL Server, e logicamente finché SQL Server vive e non cambia il linguaggio SQL, anche TSQL potrebbe sopravvivere, praticamente potrebbe morire, e presto pochissimi la gente potrebbe saperlo.

Ho ragione? L'esistenza di ORM come Entity Framework minaccia la vita e l'usabilità di TSQL?

    
posta Saeed Neamati 01.06.2012 - 08:03
fonte

2 risposte

2

Il modo in cui hai formulato la tua domanda è un po 'fuorviante, dal momento che sembra che tu stia paragonando T-SQL a LINQ a SQL (invece di dire ANSI SQL a LINQ a SQL). Anche se questo potrebbe essere un paragone valido se stiamo considerando solo mappature relazionali agli oggetti, LINQ to SQL sicuramente non fornisce funzionalità simili a T-SQL stesso.

Anche se sono d'accordo sul fatto che ci sono modi migliori per risolvere il problema di ORM rispetto agli SP codificati a mano, T-SQL è praticamente l'ambiente di programmazione e scripting nativo per SQL Server e ogni piattaforma DB relazionale principale ha il suo equivalente. L'SQL ANSI, in particolare, esiste da decenni e non credo che andrà da nessuna parte presto. Come linguaggio di recupero e manipolazione dei dati, è estremamente buono (se un po 'più verboso di quello che ci piace, al giorno d'oggi), e piuttosto standardizzato.

Molto probabilmente, T-SQL sarà meno popolare tra gli sviluppatori di applicazioni rispetto al passato, ma sempre presente e utilizzato per operazioni sensibili alle prestazioni, nonché da chiunque non codifichi applicazioni (non vedo gli amministratori di database che utilizzano LINQ a SQL per manipolare i loro DB ...).

    
risposta data 01.06.2012 - 08:26
fonte
1

Pensa a SQL come linguaggio Assembly del DB, e ORM e LINQ a SQL come lingue di livello superiore. Anche se non potremmo usare Assembly come un tempo nell'età della pietra dei computer, è ancora lì dietro le quinte e serve a uno scopo. La stessa cosa vale per SQL. Tutti quei livelli di astrazione (ORM, LINQ ... ecc.) Generano alla fine SQL che comunicano al DB.

Quindi no. Mentre ci sono i DB relazionali, SQL (e tutti gli altri dialetti localizzati come T-SQL e PL / SQL) non vanno da nessuna parte

    
risposta data 01.06.2012 - 09:12
fonte

Leggi altre domande sui tag