救命啊,帮我看看excel导入数据库时debug成功,远程访问不成功、
我把excel上传至服务器,用Select * INTO newtable FROM OpenDataSource的方法导入数据库。我本地Debug的模式下完全没有问题,可以导入。
但是我远程访问的时候,没有导入成功数据库,检索newtable 的时候就报没有对象。
//上传文件到kaoqing文件夹,这个文件夹加了asp.net访问权限
string strLocation = Server.MapPath("Kaoqing/");
string Temp1 =123.xls;
string path=strLocation +Temp1 ;//文件路径
File1.PostedFile.SaveAs(path);
string sql_insert = "Select * INTO newtable FROM OpenDataSource('Microsoft.ACE.OLEDB.12.0','Data Source=" + path + ";Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=1\"')...[sheet1$]";
//数据库操作
OleDbConnection myConnection = new OleDbConnection(Db.ConnectionString);
OleDbCommand myCommand = new OleDbCommand(Sql, myConnection);
myConnection.Open();
myCommand.ExecuteNonQuery();
myCommand.Dispose();
myConnection.Close(); --------------------编程问答-------------------- 远程访问的时候,excel文件已经上传到kaoqing文件夹了 --------------------编程问答-------------------- 应该先把EXCEL导入内表,然后再写入数据库,这样容易操作 --------------------编程问答-------------------- 主要想知道上面的代码有什么问题,还是服务器配置方面是否有问题,如果配置问题的话,为什么debug 模式下是可以的 --------------------编程问答-------------------- 我知道怎么解决了
奶奶的,('Microsoft.ACE.OLEDB.12.0','Data Source=" + path + ";Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=1\"')...[sheet1$]";
有问题。
应该用
OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source=" + path + ";User ID=Admin;Password=;Extended properties=Excel 5.0')...sheet1$";
就没问题了 --------------------编程问答-------------------- 上面这个是对EXCel 07以后的,下面这个对03的可以用,所以建议你判断一下EXcel文件的后缀是.xlsx还是.xls然后判断是用'Microsoft.ACE.OLEDB.12.0'还是'Microsoft.Jet.OLEDB.4.0 --------------------编程问答-------------------- excel版本的问题? --------------------编程问答-------------------- kaoqing 写的不对 kaoqin --------------------编程问答--------------------
哎,从小汉语拼音就不行啊。方言严重 --------------------编程问答--------------------
非常感谢,我想问下,User ID=Admin;Password=;是干嘛用的呢。肯定是多个这个才可以远程访问的。
userid是哪个的账号,password是什么的密码呢
补充:.NET技术 , ASP.NET