0

我正在尝试执行一个非常简单的示例,该示例使用 SQLOLEBD 使用 VBScript 从 CSV 文件中检索记录。我收到错误:行:4 字符:1 错误:无效的连接字符串属性”代码:80004005 来源:Microsoft OLD DB Provider for SQL Server 有人可以帮我理顺吗?

Set objConnection = CreateObject("ADODB.Connection")
Set objRecordSet = CreateObject("ADODB.Recordset")

objConnection.Open "Provider=SQLOLEDB; Data Source= C:\Users\public\; Extended Properties=""text;HDR=YES;FMT=Delimited"""

objRecordset.Open "SELECT * FROM employees.csv, objConnection, adOpenStatic, adLockOptimistic, adCmdText"

Do Until objRecordset.EOF
Wscript.Echo "name: " & objRecordset.Fields.Item("Name")
objRecordset.MoveNext
Loop

wscript.echo "Finished"

员工.csv

id,name,grade 1,"Ezequiel, Justin",1 2,Charlie Sheen,4 3,"Name, Your",8 4,Another Guy,16

4

1 回答 1

0

您的错误的直接原因是使用了错误的 OLE DB 提供程序(您的 Jet 提供程序错误可能是32 位与 64 位问题),但您的真正目标似乎是将文本文件中的数据与桌子。

两个相当简单的选项是 a) 使用各种批量加载方法之一将文件加载到 SQL Server 表中,然后像往常一样加入表,或者 b) 直接使用OPENROWSET()将表加入文件中。如果您经常这样做,或者如果您有大量数据,那么第一种方法可能会更好,因为您可以利用数据库引擎进行索引和更好的连接性能。

您也可以为此使用SSIS,但在这种情况下它可能有点矫枉过正。

提及您的 SQL Server 版本和其他具体细节总是有用的。

于 2012-07-06T18:34:27.690 回答