title: Converting column from nvarchar(max) to varchar(max) made it bigger?
body: <p>I have a table with 20 million rows that includes 4 columns with data types:</p>
  
  <ul>
  <li>nvarchar(20) </li>
  <li>nvarchar(255) </li>
  <li>nvarchar(255) </li>
  <li>nvarchar(max)</li>
  </ul>
  
  <p>Since I'm not storing unicode characters, I should be able to convert to varchar and use only half the space, right?</p>
  
  <pre><code>ALTER TABLE myTable ALTER COLUMN myColumn1 varchar(20) not null; 
  ALTER TABLE myTable ALTER COLUMN myColumn2 varchar(255) not null; 
  ALTER TABLE myTable ALTER COLUMN myColumn3 varchar(255) not null; 
  ALTER TABLE myTable ALTER COLUMN myColumn4 varchar(max) not null; 
  UPDATE STATISTICS Production.Product(Products) WITH FULLSCAN, NORECOMPUTE;
  </code></pre>
  
  <p>Well, after altering the columns and updating the statistics, it appears the table actually got larger from 9GB to 13GB. Any thoughts on how this could be?</p>
  
  <p>Here's how I'm determining table size:</p>
  
  <p><a href="https://stackoverflow.com/a/7892349/7274782">https://stackoverflow.com/a/7892349/7274782</a></p>