Declare @err int,@obj int,@out int,@src varchar(4000),@desc varchar(4000)
exec @err=sp_oacreate 'adodb.connection',@obj out
exec @err=sp_oamethod @obj,'open',null,
'Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties="Excel 12.0;HDR=YES;DATABASE=H:\fax\aa.xls"'
exec @err=sp_oamethod @obj,'execute',@out out,'create table [地区资料]([a] text(100))'
在64位MSSQL上运行以上代码,生成EXCEL文件并打开后出现以上提示,在32位上用Microsoft.Jet.OLEDB.4.0则不会有提示,估计是64位的原因,请教如何通过修改代码来消除此提示?谢谢。
------解决方案--------------------
帮你找到类似的问题解决方案,你看下
http://blog.csdn.net/claro/article/details/6401819
------解决方案--------------------
我记得12.0 是2007或以上的,也就是后缀名应该是xlsx
------解决方案--------------------
32为 xls 64:xlsx
------解决方案--------------------
Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties="Excel 12.0;HDR=YES;DATABASE=H:\fax\aa.xls"'
改成
Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties="Excel 12.0;HDR=YES;DATABASE=H:\fax\aa.xlsx"
试试。。。
这个应该是你的Excel的版本问题,只可以向下兼容,不可以向上兼容
------解决方案--------------------
貌似需要execl 也得是64的
------解决方案--------------------
ODBC驱动也需要去下载个64位的吧?