sql语句
insert into userproduct select * from OpenDataSource('MICROSOFT.JET.OLEDB.4.0',Data Source='D:\Documents and Settings\Administrator\桌面\2008-6-7.xls;Extended properties=Excel 8.0')...[Sheet1$])
提示:
服务器: 消息 170,级别 15,状态 1,行 3
第 3 行: 'Data' 附近有语法错误。
这个语句该如何写?

解决方案 »

  1.   

    insert into userproduct select * from OpenDataSource('MICROSOFT.JET.OLEDB.4.0','Data Source=D:\Documents and Settings\Administrator\桌面\2008-6-7.xls;Extended properties=Excel 8.0')...[Sheet1$])
      

  2.   

    insert into userproduct select * from OpenDataSource('MICROSOFT.JET.OLEDB.4.0','Data Source=D:\Documents and Settings\Administrator\桌面\2008-6-7.xls;Extended properties=Excel 8.0')...[Sheet1$] --> ) <-- 后面也多了个括号
      

  3.   

    谢谢LS,命令是可以了。但是执行不行,似乎我的导出的文件有问题。
    还请帮忙看看这个问题如何解决
    http://topic.csdn.net/u/20080606/20/6d823849-aeb5-4c02-a5ea-c8ac55321776.html?seed=1734894450
      

  4.   

    导出如果用OpenDataSource,Excel文件必须是已经存在的。用BCP,是一个命令行工具。
      

  5.   

    bcp "select * from database_name.dbo.userproduct" queryout "D:\Documents and Settings\Administrator\桌面\2008-6-7.xls" -c -q -S"server_name" -U"sa" -P"***"//ORbcp "database_name.dbo.userproduct" out "D:\Documents and Settings\Administrator\桌面\2008-6-7.xls" -c -q -S"server_name" -U"sa" -P"***"
      

  6.   

    用DTS吧
    要么你导入到Acess再导入到SQL中,
    因为EXCEL的数据如果不规范就会出错,而且你排查的时候很麻烦
      

  7.   

    可以先用DTS测试看是那里有问题,是数据有问题还是语句有问题。慢慢排查原因
      

  8.   

    Data 前的“逗号”换成“分号”即可。