Alcuni esempi di come sia possibile sfruttare le istruzioni di controllo del flusso offerte da T-SQL:

SET QUOTED_IDENTIFIER OFF

SET NOCOUNT ON

GO

declare @test varchar(40)

select @test = “mio testo”

if @test = “mio testo”

begin

print “@test contiene le parole ‘mio testo'”

end

else

begin

print “@test non contiene le parole ‘mio testo'”

end

declare @conta int

select @conta = 0

while @conta < 5

begin

select @conta = @conta + 1

print “Conteggio –> ” + convert(varchar(5),@conta)

end

Buon Compleanno Linux! Anche i pinguini spengono le candeline. E sì perché il 25 Agosto scorso Linux ha compiuto 10 […]

Migrare verso un nuovo sistema operativo non è un’operazione che si compie tutti i giorni, soprattutto perché comporta delle rinunce […]

Attraverso l’istruzione ALTER TABLE è possibile aggiungere una chiave primaria ad una tabella che abbiamo già creato in precedenza. Ogni volta che viene creata una PK in questo modo SQL server aggiunge in modo automatico un indice associato alla PK (attenzione di default l’indice è CLUSTERED):

BEGIN TRAN

USE pubs

ALTER TABLE MioTest

ADD CONSTRAINT PK_MioTest

PRIMARY KEY (ID)

COMMIT TRAN

Attraverso una stored procedure di sistema dal nome sp_password, possiamo facilmente cambiare le password alle nostre login:

/*

EXEC = esegue la procedura

*/

EXEC sp_password @old = “vecchiapassword”, @new = “nuovapassword”, @loginame = “miologin”

Durante la programmazione capiterà certamente la necessità di ordinare i dati di query SQL in modo crescente o decrescente.

Si pensi, ad esempio, di dover creare un output di lista nominativi. Ordinarli per nome, ne faciliterebbe la lettura.

In SQL è molto semplice effettuare l’ordinamento. Infatti basta aggiungere, in fondo alla stringa SQL, il parametro ORDER BY indicando di seguito il nome del campo con cui ordinare la query.

Questa query SQL:

SELECT * FROM utenti ORDER BY nome

ordina gli utenti per nome in modo crescente.

E’ possibile ordinare anche in modo decrescente utilizzando:

‘Ordino in modo decrescente

SELECT * FROM utenti ORDER BY nome DESC