Una delle potenzialità maggiori del T-SQL è la manipolazione delle variabili all'interno delle nostre procedure, possiamo manipolare, svuotare e riempire le nostre variabili a piacimento, anche all'interno di istruzioni SQL standard:
USE pubs
GO
-- Dichiariamo una variabile @cognome
DECLARE @cognome VARCHAR(255)
-- Inseriamo un nuovo record nella tabella authors
INSERT INTO authors VALUES (
'123-45-6789',
'Pippo',
'Pipponi',
'555 123-1234',
'Via dei Tigli 12',
'..........',
'CA',
'12345',
1 )
--Visualizziamo il cognome appena inserito
SELECT au_fname as [Cognome inserito] FROM authors WHERE au_id = '123-45-6789'
--Ora aggiorniamo il cognome con Plutoni invece di Pipponi
UPDATE authors SET @cognome = au_fname = 'Plutoni' WHERE au_id = '123-45-6789'
-- Questo è il contenuto della variabile cognome: @cognome = au_fname = 'Plutoni'
SELECT au_fname as [Cognome aggiornato] FROM authors WHERE au_id = '123-45-6789'
-- Adesso cancelliamo il record che abbiamo appena updatato
DELETE FROM authors WHERE au_fname = @cognome
-- ora nella tabella authors il record è tato eliminato ma....
SELECT au_fname as [Cognome aggiornato] FROM authors WHERE au_id = '123-45-6789'
-- Ecco il contenuto della varibile @cognome, anche se il record è stato eliminato
SELECT @cognome as [Contenuto della variabile @cognome]