问题是这样的:我想批量上传客户的商品数据,看到网上很多说服务器不好杀excel进程的贴子,于是考虑能不能客户端直接把excel打开,商品数据insert的sql语句生成了,再直接写到服务器数据库去咯。于是:
DataSet ds = new DataSet();
string strConn = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source=" + this.ProductImageV.PostedFile.FileName + "; Extended Properties='Excel 8.0'";
OleDbConnection cn = new OleDbConnection(strConn);
try
{
cn.Open();
}
catch(Exception ee)
{
ErrorID.Text = ee.ToString();
}这段程序在本地调试通过了,而且相应的服务器端的数据库生成了相应的数据。可是,我把这段程序传到服务器端之后就不行了,处理相同的一个e盘下(fat32格式)的excel文件,抛出异常如下:System.Data.OleDb.OleDbException: Microsoft Jet 数据库引擎打不开文件''。 它已经被别的用户以独占方式打开,或没有查看数据的权限。 at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at System.Data.OleDb.OleDbConnection.InitializeProvider() at System.Data.OleDb.OleDbConnection.Open() at ASPNET.StarterKit.Commerce.ExcelOutput.ExecUpload(Object sender, EventArgs e) 郁闷哟,哪位有经验的教教我该怎么解决阿谢谢。
DataSet ds = new DataSet();
string strConn = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source=" + this.ProductImageV.PostedFile.FileName + "; Extended Properties='Excel 8.0'";
OleDbConnection cn = new OleDbConnection(strConn);
try
{
cn.Open();
}
catch(Exception ee)
{
ErrorID.Text = ee.ToString();
}这段程序在本地调试通过了,而且相应的服务器端的数据库生成了相应的数据。可是,我把这段程序传到服务器端之后就不行了,处理相同的一个e盘下(fat32格式)的excel文件,抛出异常如下:System.Data.OleDb.OleDbException: Microsoft Jet 数据库引擎打不开文件''。 它已经被别的用户以独占方式打开,或没有查看数据的权限。 at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at System.Data.OleDb.OleDbConnection.InitializeProvider() at System.Data.OleDb.OleDbConnection.Open() at ASPNET.StarterKit.Commerce.ExcelOutput.ExecUpload(Object sender, EventArgs e) 郁闷哟,哪位有经验的教教我该怎么解决阿谢谢。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货