title: pandas to_sql all columns as nvarchar
body: <p>I have a pandas dataframe that is dynamically created with columns names that vary.  I'm trying to push them to sql, but don't want them to go to mssqlserver as the default datatype "text" (can anyone explain why this is the default?  Wouldn't it make sense to use a more common datatype?) </p>
  
  <p>Does anyone know how I can specify a datatype for all columns? </p>
  
  <pre><code>column_errors.to_sql('load_errors',push_conn, if_exists = 'append', index = False, dtype = #Data type for all columns#)
  </code></pre>
  
  <p>the dtype argument takes a dict, and since I don't know what the columns will be it is hard to set them all to be 'sqlalchemy.types.NVARCHAR'</p>
  
  <p>This is what I would like to do:</p>
  
  <pre><code>column_errors.to_sql('load_errors',push_conn, if_exists = 'append', index = False, dtype = 'sqlalchemy.types.NVARCHAR')
  </code></pre>
  
  <p>Any help/understanding of how best to specify all column types would be much appreciated!</p>