Limitare la gamma accettabile di un valore in SQL Server 2008
-
09-10-2019 - |
Domanda
voglio definire un tinyint con un range accettato di 0 - 10. Io so come utilizzare i trigger per convalidare una colonna e ottenere questo effetto
.Tuttavia, è possibile creare un tipo di dati definito dall'utente che specifica questo intervallo di regola? Quindi, se un valore al di fuori della gamma è tentato, ovviamente un errore sarebbe stato lanciato automaticamente, senza la necessità di trigger?
Soluzione
Usa un vincolo CHECK piuttosto che tipi definiti dall'utente che sono abbastanza scomodi da usare
Altri suggerimenti
In primo luogo, creare una regola con il vincolo, poi un tipo, poi associarlo:
http://www.mssqltips.com/tip.asp?tip=1628
(Ma sono d'accordo con gbn, il 99,99% del tempo, basta usare un vincolo di controllo)