SQL Server OPENROWSET OLE DB provider "MSDASQL" for linked server "(null)"
<p>First I configure ad hoc distributed queries with this query:</p>

<pre><code>EXEC sp_configure 'show advanced options', 1
RECONFIGURE
GO
EXEC sp_configure 'ad hoc distributed queries', 1
RECONFIGURE
GO

SELECT * FROM
OPENROWSET('MSDASQL'
 ,'Driver={Microsoft Access Text Driver (.txt, .csv)}; 
 DefaultDir=C:\CSV' 
 ,'select * from smdr.csv') T
</code></pre>

<p>then when I try to execute the above script I get this error:</p>

<blockquote>
  <p>OLE DB provider "MSDASQL" for linked server "(null)" returned message
  "[Microsoft][ODBC Driver Manager] Data source name not found and no
  default driver specified". Msg 7303, Level 16, State 1, Line 1 Cannot
  initialize the data source object of OLE DB provider "MSDASQL" for
  linked server "(null)".</p>
</blockquote>

<p>How can I fix this?</p>