OLE DB提供程序“MSDASQL”报错
问题描述:
我试图运行此代码:OLE DB提供程序“MSDASQL”报错
<%
Dim rsSelectOrder
Dim rsSelectOrder_numRows
Set rsSelectOrder = Server.CreateObject("ADODB.Recordset")
rsSelectOrder.ActiveConnection = MM_conn_to_mhwebdb_STRING
rsSelectOrder.Source = "SELECT * from " & ActinicPersons &" p, " &ActinicOrders&" o WHERE p. [Contact ID] = o.[Invoice Contact ID] AND o.[Order Number] NOT IN (SELECT OrderNumber from dbo.tbl_OrdersEntered)"
rsSelectOrder.CursorType = 0
rsSelectOrder.CursorLocation = 2
rsSelectOrder.LockType = 1
rsSelectOrder.Open()
rsSelectOrder_numRows = 0
%>
使用以下连接:
<%
' FileName="Connection_odbc_conn_dsn.htm"
' Type="ADO"
' DesigntimeType="ADO"
' HTTP="true"
' Catalog=""
' Schema=""
Dim ActinicPersons, ActinicOrders, ActinicOrderLines, ActinicPayments
ActinicPersons = "OpenRowset('MSDASQL', 'Driver={Microsoft Text Driver (*.txt; *.csv)}; DefaultDir=C:\inetpub\ActinicOrderFiles\;','select * FROM persons.csv')"
ActinicOrders = "OpenRowset('MSDASQL', 'Driver={Microsoft Text Driver (*.txt; *.csv)}; DefaultDir=C:\inetpub\ActinicOrderFiles\;','select * FROM orders.csv')"
ActinicOrderLines = "OpenRowset('MSDASQL', 'Driver={Microsoft Text Driver (*.txt; *.csv)}; DefaultDir=C:\inetpub\ActinicOrderFiles\;','select * FROM orderlines.csv')"
ActinicPayments = "OpenRowset('MSDASQL', 'Driver={Microsoft Text Driver (*.txt; *.csv)}; DefaultDir=C:\inetpub\ActinicOrderFiles\;','select * FROM payments.csv')"
%>
不幸的是,即使这段代码运行在服务器管理我见以下错误消息:
链接服务器的OLE DB提供程序“MSDASQL”(空)“返回的消息”[Microsoft] [ODBC驱动程序管理器]未找到数据源名称并且没有指定默认驱动程序“。 消息7303,级别16,状态1,行1 无法初始化链接服务器“(null)”的OLE DB提供程序“MSDASQL”的数据源对象。
关于如何解决它的任何想法?我已经为连接设置了DSN
答
这可能是x32和x64驱动程序之间的问题,它会抛出“未找到驱动程序”错误。
试试这个:Data source name not found and no default driver specified
这听起来像您的SQL服务器下运行没有权限读取您的.csv文件的帐户。当您通过查询分析器或SSMS运行这些SQL命令时会发生什么? – tgolisch 2013-01-04 17:18:07