关于excel直接导入到数据库的问题~~~~谢谢

nickzwd 2007-01-23 06:05:28
问题如下:

在本机的sql查询分析器里执行下列语句一切正常,可以将excel文档中的数据导入到库中:

insert into JSOtherUsers select '10000003' as userid,姓名 , convert(varchar,cast(手机 as numeric)) as mobile from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=D:\啊啊啊啊啊啊啊啊啊.xls',sheet1$)

但是导入别的服务器就不行了~~~~~求问~~~~~

我用查询分析器打开远程服务器,然后执行语句,有下列错误提示:

服务器: 消息 7314,级别 16,状态 1,行 1
OLE DB 提供程序 'MICROSOFT.JET.OLEDB.4.0' 不包含表 'sheet1$'。该表可能不存在,或当前用户没有使用该表的权限。
OLE DB 错误跟踪[Non-interface error: OLE DB provider does not contain the table: ProviderName='MICROSOFT.JET.OLEDB.4.0', TableName='sheet1$']。
...全文
200 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
nickzwd 2007-01-23
  • 打赏
  • 举报
回复
谢谢各位,果然是路径需要弄成共享的哦。
中国风 2007-01-23
  • 打赏
  • 举报
回复
insert JSOtherUsers
select '10000003' as userid,姓名 , convert(varchar,cast(手机 as numeric)) as mobile
FROM openrowset( 'Microsoft.Jet.OLEDB.4.0',
'EXCEL 8.0;HDR=YES;IMEX=1; DATABASE=D:\啊啊啊啊啊啊啊啊啊.xls',sheet1$)as roy--ms$换为Sheet1$
中国风 2007-01-23
  • 打赏
  • 举报
回复
Excel 5.0改为Excel 8.0试试
正确语法如下:
insert JSOtherUsers
select '10000003' as userid,姓名 , convert(varchar,cast(手机 as numeric)) as mobile
FROM openrowset( 'Microsoft.Jet.OLEDB.4.0',
'EXCEL 8.0;HDR=YES;IMEX=1; DATABASE=D:\啊啊啊啊啊啊啊啊啊.xls',ms$)as roy
nickzwd 2007-01-23
  • 打赏
  • 举报
回复
哦~~~好像是这样。我先调试一下试试。
baoshan 2007-01-23
  • 打赏
  • 举报
回复
使用远程服务器,你得保证要导入的excel通过网络能访问到,例如\\202.102.11.22\共享文件夹\文件名
改为DATABASE=\\202.102.11.22\共享文件夹\文件名

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧