IniziaInizia gratis

Il tuo primo script di gestione degli errori

Ti sei accorto che la tabella products non ha alcun vincolo per controllare i dati memorizzati nella colonna stock. Ha senso che stock sia sempre maggiore o uguale a 0. Per qualche motivo, c’è un errore nella seguente riga. Lo stock è -1!

| product_id | product_name | stock | price |
|------------|--------------|-------|-------|
| 6          | Trek Neko+   | -1    | 2799  |

Vuoi preparare uno script che aggiunga un vincolo alla tabella products, in modo che siano ammessi solo valori di stock maggiori o uguali a 0.

Se aggiungi questo vincolo che consente solo stock maggiori o uguali a 0, l’esecuzione non andrà a buon fine perché c’è una riga in cui lo stock è -1.

Come puoi preparare lo script?

Questo esercizio fa parte del corso

Transazioni e gestione degli errori in SQL Server

Visualizza il corso

Istruzioni dell'esercizio

  • Inserisci il vincolo all’interno di un blocco TRY.
  • Aggiungi il vincolo alla tabella products.
  • Inserisci il messaggio di errore all’interno di un blocco CATCH.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

-- Set up the TRY block
BEGIN ___
	-- Add the constraint
	ALTER TABLE ___
		ADD CONSTRAINT CHK_Stock CHECK (stock >= 0);
___ ___
-- Set up the CATCH block
___ ___
	SELECT 'An error occurred!';
END ___
Modifica ed esegui il codice