.net “我如何解决?”;“OLE DB提供程序”;微软.Jet.OLEDB.4.0“;尚未注册。”;?
我尝试使用从excel文件获取excel数据。我正在使用Office2007和SQL2005。我写了以下代码:.net “我如何解决?”;“OLE DB提供程序”;微软.Jet.OLEDB.4.0“;尚未注册。”;?,.net,sql-server,sql-server-2005,.net,Sql Server,Sql Server 2005,我尝试使用从excel文件获取excel数据。我正在使用Office2007和SQL2005。我写了以下代码: CREATE TABLE [dbo].[Addresses_Temp] ( [FirstName] VARCHAR(20), [LastName] VARCHAR(20), [Address] VARCHAR(50), [City] VARCHAR(30), [State] VARCHAR(2),
CREATE TABLE [dbo].[Addresses_Temp] (
[FirstName] VARCHAR(20),
[LastName] VARCHAR(20),
[Address] VARCHAR(50),
[City] VARCHAR(30),
[State] VARCHAR(2),
[ZIP] VARCHAR(10)
)
GO
INSERT INTO [dbo].[Address_Temp] ( [FirstName], [LastName], [Address], [City], [State], [ZIP] )
SELECT [FirstName], [LastName], [Address], [City], [State], [ZIP]
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:\Source\Addresses.xls;IMEX=1',
'SELECT * FROM [Sayfa1$]')
错误:Msg 7403,16级,状态1,第2行
OLE DB提供程序“Microsoft.Jet.OLEDB.4.0”尚未注册。如何解决此问题?对于32位SQL Server,您需要手动安装,因为从MDAC 2.6开始,驱动程序不包括在内。可以下载 对于64位SQL Server,恐怕这已经不可能了。喷气发动机驱动程序没有移植到64位,而且将来也不会移植。
可以使用SSIS导入Excel文档,但不能使用OpenRowSet查询。还有另一种选择,但如果您是从SQL代理作业运行SSIS包,那么这似乎是一个非常费劲的过程 在从MSDB或文件系统拾取ssis包后的步骤属性中,转到执行选项点击并选中使用32位运行时选项
为我工作。这是在32位还是64位SQL server上?在新的查询中执行
select@@Version
它将告诉您是32位还是64位Microsoft在四年后响应了这些请求,现在这是可能的。