Użyj tego, aby wygenerować smalldatetime między 1 stycznia 1900 a 6 czerwca 2079 (nie zaznaczone, SQL nie jest zainstalowany)
DATEADD(day, (ABS(CHECKSUM(NEWID())) % 65530), 0)
NEWID jest lepsze niż próba użycia RAND:RAND nie generuje wierszy różnych wartości w pojedynczym SELECT lub UPDATE (no cóż, nie było w SQL 2000, na wypadek zmiany zachowania).
Edycja:tak
UPDATE
table
SET
datetimecol = DATEADD(day, (ABS(CHECKSUM(NEWID())) % 65530), 0)
Edycja:zmieniono 65535 na 65530 i dodano ABS, aby uniknąć przepełnienia przy górnej granicy zakresu