title: Only a column name can be used for the key in a dtype mappings argument
body: <p>I've successfully brought in one table using dask read_sql_table from a oracle database. However, when I try to bring in another table I get this error <strong>KeyError: 'Only a column name can be used for the key in a dtype mappings argument.'</strong> </p>
  
  <p>I've checked my connection string and schema and all of that is fine. I know the table name exists and the column i'm trying to use as an index is a primary key on the table in the oracle database.</p>
  
  <p>Can someone please explain why this error occurs when the column name clearly exists?</p>
  
  <p>I know I can use Pandas chunk, but would rather use dask in this scenario.</p>
  
  <p>below is how i'm connecting to the oracle database and the last bit of the error message</p>
  
  <pre><code>host='*******'
  port='*****'
  sid='****'
  user='******'
  password='*****'
  
  con_string = 'oracle://' + user + ':' + password + '@' + host + ':' + port + '/' + sid 
  engine = create_engine(con_string)
  
  df =ddf.read_sql_table('table_name', uri=con_string, index_col='id', npartitions=None, schema='*****')
  </code></pre>
  
  <blockquote>
    <p>~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\generic.py
    in astype(self, dtype, copy, errors, **kwargs)    5855<br>
    if col_name not in self:    5856                     raise KeyError(
    -> 5857                         "Only a column name can be used for the "    5858                         "key in a dtype mappings
    argument."    5859                     )</p>
    
    <p>KeyError: 'Only a column name can be used for the key in a dtype
    mappings argument.'</p>
  </blockquote>
  
  <p>Today for another table I added all the column names in ddf.read_sql_table and the query worked. But for another table I tried to do the same thing by listing all the column names and I got the KeyError above. </p>
  
  <p>Thanks everyone.</p>