0

正如不言自明的问题所描述的那样,我遇到了以下情况:-

  1. 一旦用户执行 SP,他应该得到一个选择窗口来从他的机器中选择任何所需的 Excel 表。
  2. 选择此选项后,应将整个 Excel 工作表数据导入表中。

要求很简单。但障碍是旧版本的 SQL 即 2000。

有什么建议吗?

作为对@MAT的回应:-我尝试做的许多事情之一是使用OPENROWSET:-

SELECT *
INTO demoTable
FROM
OPENROWSET('Microsoft.Jet.OLEDB.4.0'
,'Excel 8.0;Database=C:\Work\Reports\CustomerRecords.xls'
,'SELECT * FROM [Sheet1$]'
)

这引发了错误:-

对 OLE DB 提供程序“Microsoft.Jet.OLEDB.4.0”的临时访问已被拒绝。您必须通过链接服务器访问此提供程序。

据我了解,这是一个与访问相关的问题。所以为了解决这个问题,我这样做了:-

打开 regedit.exe 并导航到 \Software\Microsoft\Microsoft SQL Server\Providers\Microsoft.Jet.OLEDB.4.0 并创建一个名为 DisallowAdhocAccess 且值为 0 的 DWORD。

但这也不起作用,因为在创建新的 DWORD 时,它会抛出错误:-

错误创建值 - 无法创建值:写入注册表时出错。

4

0 回答 0