Czy jest jakiś mechanizm w SQL Server, aby umożliwić funkcjonalność typu wyliczonego?Wyliczone typy w SQL Server 2008?
Na przykład, jeśli mam kolumnę o nazwie "UpdateStatus" to zwykle dostaje konfigurację z pojedynczych wartości liter tak:
- D
- X
- U
- I
To może równać się wielu rzeczom. To prowadzi do zamieszania. Alternatywą jest, aby mieć to być kolumna ciąg tak:
- pobranych
- Usunięto
- Updated
- przygotowanej
Ale to ma swoje własne problemy. W końcu ktoś napisze coś takiego: where UpdateStatus = 'Initalized'
(błędnie napisane). Poza tym słyszę, że wyłączanie ciągów nie jest tak skuteczne.
Czy istnieje jakiś typ wyliczeniowy dla programu SQL Server, który może w tym pomóc? Zasadniczo szukam czasu kompilacji sprawdzanie, czy porównywana wartość (np. "Initialized") jest częścią listy wartości.
Używam SQL Server 2008.
Nie, inny, że proponowane rozwiązania (tabela przeglądowa z ograniczeniem FK) nie ma nic w SQL Server, który działa jak typ "enum". –
@marc_s: To źle. Miałem nadzieję, że niektóre obiekty CLR mogą zostać użyte do stworzenia wyliczonego typu. – Vaccano