T-SQL o Transact-SQL è un'estensione proprietaria di SQL (Sequential Query Language). Le funzionalità estese includono: prestazioni migliorate, maggiore funzionalità e supporto della globalizzazione potenziato.
Procedure memorizzate in Transact-SQL
Le stored procedure sono routine sul lato server eseguibili. Ti danno grandi benefici in termini di potenza e prestazioni se usati con saggezza. A differenza delle funzioni definite dall'utente (UDF), le stored procedure possono avere effetti collaterali. La ragione di ciò è che non si può avere una transazione all'interno della funzione, mentre, in una procedura, possono modificare i dati nelle tabelle e persino alterare le definizioni dell'oggetto. Le stored procedure possono essere utilizzate come livello di sicurezza. È possibile controllare l'accesso agli oggetti concedendo autorizzazioni di esecuzione sulle stored procedure e non sugli oggetti sottostanti.
SQL Server 2008 supporta diversi tipi di stored procedure: Definito dall'utente, sistema ed esteso. È possibile sviluppare stored procedure definite dall'utente con T-SQL o con CLR.
Di seguito sono alcune applicazioni che possono generare Transact-SQL:
- Applicazioni di produttività generale dell'ufficio.
- Applicazioni che utilizzano un'interfaccia utente grafica (GUI) per consentire agli utenti di selezionare le tabelle e le colonne da cui desiderano visualizzare i dati.
- I sistemi di database distribuiti da cui vengono replicati i dati di SQL Server in vari database o le query distribuite.
- Data warehouse in cui i dati vengono estratti dai sistemi di elaborazione delle transazioni online (OLTP) e riepilogati per l'analisi del supporto decisionale.
Per spiegare in modo più completo, la programmazione in Transact-SQL è una combinazione di diversi componenti distinti, ma integrati. Supponiamo che vogliate creare un'applicazione e iniziare con la progettazione e l'analisi del database come desiderato. E che hai costruito il tuo database di sviluppo utilizzando dichiarazioni dichiarative SQL o forse uno strumento di modellazione dei dati visivi. Successivamente, è possibile implementare una serie di regole aziendali complesse sulle tabelle del database tramite trigger codificati in Transact-SQL. Da lì, è possibile creare report e moduli di elaborazione aziendale che supportano l'interfaccia utente tramite stored procedure codificate in Transact-SQL.
Come accennato in precedenza, SQL Server 2008 offre una vasta gamma di funzionalità Transact-SQL che consente agli sviluppatori di creare nuove applicazioni in grado di archiviare e utilizzare qualsiasi tipo di dati su qualsiasi dispositivo e consente a tutti gli utenti di prendere decisioni informate con approfondimenti pertinenti. Ecco le caratteristiche principali:
- Inizializzazione delle variabili
- Operatori di assegnazione composti
- Funzione CONVERT migliorata
- Nuovi tipi di dati di data e ora
- Nuove funzioni di data e ora
- La dichiarazione MERGE
- Raggruppamento di gruppi
- Parametri valutati da tavolo
- Grandi tipi definiti dall'utente
- Supporto costruttore di valori tabella
- Il tipo di dati HIERARCHYID
- Miglioramenti del trigger DDL
- Grandi aggregati definiti dall'utente CLR
- Colonne sparse
- Indici filtrati
- Aggregati definiti dall'utente CLR a più ingressi
- L'opzione ORDER per le funzioni con valori di tabella CLR
- Dipendenze degli oggetti
- Cambia l'acquisizione dei dati
- Allineamento di collazione
- deprecazione
Il database SQL è un argomento popolare in questi giorni. Con i dati sempre più complessi ed enormi, tecnologie come Transact-SQL rendono le query più rapide e ottimizzate. Comprendere e studiare queste tecnologie che implicano la gestione di data warehouse complessi e le loro problematiche di mining è ottimo nei suoi termini. Per i principianti che hanno una certa conoscenza del DBMS, questi sono alcuni nuovi concetti che possono aiutarli a sviluppare meglio il loro approccio.
Se stai cercando di esplorare completamente Transact-SQL, ti consiglio di prendere alcuni libri e di usare anche MSDN per le soluzioni.