Best equivalent for IsInteger in SQL Server
If SQL Server 2005+, I'd enable CLR and create the function to support regexes. For SQL Server 2000, see this article for creating a UDF to do the same thing.
Then I'd use the regex: ^\d{5}$
1 approach is
zipcode NOT LIKE '%[^0-9]%'
Double negatives, got to love 'em!
Late entry that handles negative
ISNUMERIC(zipcode + '.0e0') --integer
ISNUMERIC(zipcode + 'e0') --decimal
For more see this