Facciamo una breve panoramica delle possibilità che ci offre T-SQL e quindi dei limiti di SQL:
Usare il costrutto condizionale if ... else per imporre delle condizioni alla esecuzione di comandi T-SQL o SQL
If (select count(*) from authors) = 0
Print 'Non ci sono autori nella tabella'
Else
Print 'Ci sono autori nella tabella'
produce un output simile
Ci sono autori nella tabella
Usare una istruzione SELECT per stampare il nome e la versione dell'SQL Server in uso
select @@SERVERNAME, @@version
produce un output simile
LUCA Microsoft SQL Server 7.00 - 7.00.623 (Intel X86)
Nov 27 1998 22:20:07
Copyright (c) 1988-1998 Microsoft Corporation
Desktop Edition on Windows 4.10 (Build 1998: )
(1 row(s) affected)
Usare una istruzione SELECT senza FROM, per creare dei contatori di record per due diverse tabelle
select c_authors=(select count(*) from authors),
c_titles=(select count(*) from titles)
produce un output simile
c_authors c_titles
----------- -----------
23 18
1 row(s) affected)
Usare una procedura particolare di T-SQL dal nome xp_cmdshell per eseguire qualsiasi comando da shell, come visualizzare i files contenuti nel disco fisso c
exec master..xp_cmdshell 'dir c:'
produce un output simile
output
------------------------------------------------------------------------------------------------------------------------------------------------
NULL
Il volume nell'unità C è LAPTOP
Numero di serie del volume: 3D6F-10E0
Directory di C:
NULL
COMMAND COM 96.200 16/05/98 4.01 COMMAND.COM
WINDOWS <DIR> 01/12/99 20.07 WINDOWS
CONFIG SYS 282 14/03/01 20.04 CONFIG.SYS
MSSQL7 <DIR> 15/09/00 10.26 MSSQL7
WINZIP LOG 74.732 16/05/01 20.17 winzip.log
NETLOG TXT 12.766 25/05/99 16.55 NETLOG.TXT
LOGO SYS 129.078 24/06/98 16.44 LOGO.SYS
----------------------------------------------------------------------------
Queste sono solo alcune delle caratteristiche avanzate che il T-SQL possiede
rispetto all'SQL Standard e che nel proseguire delle lezioni riuscire a
padroneggiare.