I have a huge table in SQL Server 2005. (The table is about 40gb) I am looking for the safest and most pain-free way to either free up space, or delay its growth.
The table has three fixed length (char(10)
) columns that are a) completely unneeded and b) almost totally filled with NULL
.
If I drop these columns will SQL Server start using the freed space within the data file when new records are imported? Or does their fragmented nature (I assume) because of being spread out over many records mean that SQL Server will ignore the space for performance reasons?
If I do drop them, can I run shrink database to free up the space?
I'm the only developer who utilizes this database, and I know these columns are surplus to requirements. They were added along with every other column in a flat file 15 years ago when different lazy developers created this database.