title: SQL Server 2008 - Editing Tables: Bit columns require 'True' or 'False'
body: <p>Not so much a question as an observation...</p>
  
  <p>I'm just upgrading to SQL Server 2008 on my development machine in anticipation of upgrading my live applications. I didn't anticipate any problems since [I think] I generally use standard T-SQL, and probably not too far from ANSI standard SQL. So far so good, but I was really thrown by a very simple change:</p>
  
  <p>I was creating a simple, small look-up table to store a list of codes and including a bit column to indicate the current default code. But when I used the new/modified 'Edit Top 200 Rows' option, and entered my 0s and 1s in the the bit column I got an error:</p>
  
  <blockquote>
    <p>'Invalid value for cell - String was
    not recognised as a valid boolean'</p>
  </blockquote>
  
  <p>After a bit of head-scratching, I tried True and False - and they worked. </p>
  
  <p>So it seems this new Edit feature requires 4 or 5 characters to be typed, rather than the previous 1.</p>
  
  <p>Checking further, we can still use '<code>...where bitval = 1</code>' but can now also use '<code>...where bitval = 'true'</code>'. But any results returned render these bit columns as 0 or 1 still.</p>
  
  <p>It all sounds like half a step backwards. Not the end of the world, but and unnecessary annoyance.</p>
  
  <p>Does anybody have any insight on this issue? Or there any other new Gotchas with SQL Server 2008?</p>
  
  <p><strong>2012 Update:</strong>
  Having just installed SQL Server 2012, I notice that this behaviour has been 'corrected' - Just as I could before, I can now enter 1/0 rather than True/False directly into rows, using the 'Edit Top 200 Rows' option. It's a small thing, but I'm happy.</p>