The mystery of the non-editable zip code values

I finally fixed something that has been bugging me for a while now. When adding new addresses in our GIS database, certain zip code values (owner zip only) from out of state would be kicked out. It happened to me today so I decided to look at the properties of the fields in the database. It turns out that field was set up as a short integer. Now short integers (unsigned ones) allow values from -32,768 to 32,767 so a zip code of 34465 (the one I just tried) is out of range.

The fix was to add a new field temporarily, calculate it to the values in the old OWNER_ZIP field and then NULL the values in the original field and change it to Long Integer and calculate it back. You have to do it this way in ArcGIS because if there is data in the field it won't let you change it (even though it would work in SQL Server).