use test1
go
IF Not OBJECT_ID('[TBTEST]')IS NULL
   DROP TABLE [TBTEST]
   
GO
CREATE TABLE [TBTEST](
[TID]INT PRIMARY KEY,
[DATE]NVARCHAR(20)NULL,
[MONEY]DECIMAL(10,2)NULL)
GO  
exec sp_configure 'show advanced options',1
reconfigure
exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure
INSERT INTO TBTEST(TID,DATE,MONEY) 
SELECT * FROM OPENROWSET('Microsoft.jet.OLEDB.12.0',
'Excel 12.0;HDR=Yes;IMEX=1;Database=C:\TEST(2).xlsx',
'select * from [Sheet1$]')
我使用的64位SQL SERVER 2008 R2 ,office是2010,但是产生错误:訊息 7403,層級 16,狀態 1,行 2
OLE DB 提供者 "Microsoft.jet.OLEDB.12.0" 尚未註冊。在网上找到解决方案:management studio--->服务器对象-->链接服务器-->Microsoft.Jet.OLEDB.4.0-->右键属性-->访问接口选项:全都不选但是找不到服务器对象这个选项,麻烦各位大神帮帮我!

解决方案 »

  1.   

    【对象资源管理器】→展开→会看到(数据库、安全性、【服务器对象】、复制、管理、SQLServer代理),加了中括号的就是你要找的,我的也是2008R2,可以找到,也可以找到服务器对象-->链接服务器-->Microsoft.Jet.OLEDB.4.0-->右键属性-->访问接口选项。如果你找不到,那么就是你安装的时候没完全安装了。
      

  2.   

    看不到图,你要不上传到你CSDN的空间然后再发连接吧
      

  3.   

    微软没有提高64bit的JET Driver,如果你的数据库是64bit的,可能需要用到Microsoft Access Database Engine 2010 driverhttp://blogs.msdn.com/b/psssql/archive/2010/01/21/how-to-get-a-x64-version-of-jet.aspx