title: SQL alias data types
body: <p>I am starting a new project, and I am considering using alias data types in my SQL Server 2005 database, for common table columns. For e.g. I would define an alias data type to hold the name of an object, as follows:</p>
  
  <blockquote>
    <p>CREATE TYPE  adt_Name FROM
    varchar(100) not null</p>
  </blockquote>
  
  <p>Then use it for the definition of table columns, ensuring all my columns share the exact same definition (length, nullability, precision, etc).</p>
  
  <ol>
  <li>What are the advantages of using alias data types?</li>
  <li>What are the disadvantages of using alias data types?</li>
  <li>What naming conventions would you recommend? I was thinking adt_Xxx (adt = alias data type).</li>
  <li>Why does SQL Server 2005 Management Studio not allow me to work with alias data types from the GUI. I can only use them through SQL Scripts. The GUI doesn't list them in any of the drop-down boxes - its frustrating.</li>
  <li>How will the use of alias data types affect my Linq to SQL model?</li>
  </ol>