当前位置:编程学习 > C#/ASP.NET >>

关于Excel导入数据到SQL的问题,谢谢大家了!!!

代码如下:

public DataSet ExecleDs(string filenameurl, string table)
    {
        string strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + filenameurl + ";Extended Properties='Excel 8.0; HDR=YES; IMEX=1'";
        OleDbConnection conn = new OleDbConnection(strConn);
        conn.Open();
        DataSet ds = new DataSet();
        //string excelstore = "select a.单号,a.条码1,a.幸运号 from [Sheet1$] a";
        //string excelstore = "select a.单号,a.条码1,a.幸运号,m.Style,s.id from [sheet1$] a left join tblStoreActionSub s on a.单号=s.StoreActionNo inner join tblStoreActionMain m on m.StoreActionNo=s.StoreActionNo";
        string excelstore = "select a.单号,a.条码1,a.幸运号,m.Style,s.id from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 8.0;HDR=YES;IMEX=1;DATABASE=" + filenameurl + "'" + ",[sheet1$]) a left join tblStoreActionSub s on a.单号=s.StoreActionNo inner join tblStoreActionMain m on m.StoreActionNo=s.StoreActionNo";
        //Response.Write(excelstore);
        //Response.End();
        OleDbDataAdapter odda = new OleDbDataAdapter(excelstore, conn);
        odda.Fill(ds, table);
        return ds;
    }

问题如下:

紫色这行报的错.
用红色字体SQL语句的时候没事。
用蓝色字体SQL语句的时候报错:FROM 子句语法错误。 
但是我打印出来蓝色字体的语句,在SQL查询分析器里执行,是没有问题的,数据能正常显示。
我怀疑是前面已经用了OLEDB连接,SQL语句里又写了一遍,只是怀疑是这的错误,但不会报 “FROM 子句语法错误” 吧! 
请问还有哪儿有可能有错啊?
谢谢大家~~~ --------------------编程问答-------------------- 你都怀疑了 还不去测试一下?
--------------------编程问答-------------------- OLEDB Driver不支持OPENROWSET --------------------编程问答-------------------- 每天回帖即可获得10分可用分! --------------------编程问答-------------------- TO:vip__888 我就是不知道把那个数据库连接放在哪里才问的`~还望指点一二`~

TO:OLEDB Driver不支持OPENROWSET 真的吗?那我打印出来SQL语句怎么能正常执行呢?

还有没有别的办法?

补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,