Microsoft Jet数据库引擎无法打开 [英] The Microsoft Jet database engine cannot open

查看:107
本文介绍了Microsoft Jet数据库引擎无法打开的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好,



我得到以下错误:



hello ,

I get Following error :

The Microsoft Jet database engine cannot open the file 'D:\AspProject\ExportToExcel\Web\UploadFiles'.  It is already opened exclusively by another user, or you need permission to view its data. 

推荐答案

string strFileType = System.IO.Path.GetExtension(filepath.ToLower());
                      string sSourceConstr = String.Empty;


                      if (strFileType.Trim() == ".xls")
                      {
                          sSourceConstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source =" + filepath + "; Extended Properties=\"Excel 8.0; HDR=Yes; IMEX=2\"";
                      }
                      else if (strFileType.Trim() == ".xlsx")
                      {
                          sSourceConstr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" + filepath + "; Extended Properties=\"Excel 12.0; HDR=Yes; IMEX=2\"";
                      }


                      string sDestConstr = ConfigurationManager.ConnectionStrings["Class"].ConnectionString;
                      OleDbConnection sSourceConnection = new OleDbConnection(sSourceConstr);
                      using (sSourceConnection)
                      {
                          sSourceConnection.Open();

                          string sql = "select * from [" + dr["SheetName"].ToString() + "]"; //"select * from


,sheet
OleDbCommand command = new OleDbCommand(sql,sSourceConnection);

OleDbDataAdapter da = new OleDbDataAdapter();
da = new OleDbDataAdapter(command);
DataSet ds = new DataSet();
da.Fill(ds);
if (ds.Tables.Count > 0
{
DataTable dt = ds.Tables [ 0 ];

if (dt.Rows.Count > 0
{
用户objUser =(用户)会话[ UserSession];
string curUser = objUser.UserId;

DataColumn dcUser = new DataColumn();
dcUser.ColumnName = CreatedBy;
dcUser.DefaultValue = curUser;
dt.Columns.Add(dcUser);

DataColumn dcCreatedOn = new DataColumn();
dcCreatedOn.ColumnName = CreatedOn;
dcCreatedOn.DataType = System.Type.GetType( System.DateTime);
dcCreatedOn.DefaultValue = DateTime.Now;
dt.Columns.Add(dcCreatedOn);

int newsNo = dt.Rows.Count;
string table =( ZipUpload + _ + dr [ SheetName]。ToString()。替换(
",sheet OleDbCommand command = new OleDbCommand(sql, sSourceConnection); OleDbDataAdapter da = new OleDbDataAdapter(); da = new OleDbDataAdapter(command); DataSet ds = new DataSet(); da.Fill(ds); if (ds.Tables.Count > 0) { DataTable dt = ds.Tables[0]; if (dt.Rows.Count > 0) { Users objUser = (Users)Session["UserSession"]; string curUser = objUser.UserId; DataColumn dcUser = new DataColumn(); dcUser.ColumnName = "CreatedBy"; dcUser.DefaultValue = curUser; dt.Columns.Add(dcUser); DataColumn dcCreatedOn = new DataColumn(); dcCreatedOn.ColumnName = "CreatedOn"; dcCreatedOn.DataType = System.Type.GetType("System.DateTime"); dcCreatedOn.DefaultValue = DateTime.Now; dt.Columns.Add(dcCreatedOn); int newsNo = dt.Rows.Count; string table = ("ZipUpload"+"_"+dr["SheetName"].ToString().Replace("


) );
string conString = ConfigurationManager.ConnectionStrings [ ]的ConnectionString。
CommonBase objCommonBase = new CommonBase();
objCommonBase.DeletTableData(table);

FileUploadBase objFileUpload = new FileUploadBase();
objFileUpload.BulkInsert(dt,table,conString);

lblMessage.Text = 文件已成功上传!< br />记录: + newsNo + < br />;
lblMessage.ForeColor = System.Drawing.Color.Green;
","")); string conString = ConfigurationManager.ConnectionStrings["Class"].ConnectionString; CommonBase objCommonBase = new CommonBase(); objCommonBase.DeletTableData(table); FileUploadBase objFileUpload = new FileUploadBase(); objFileUpload.BulkInsert(dt, table, conString); lblMessage.Text = "File uploaded successfully! <br /> No. of Record: " + newsNo + "<br />"; lblMessage.ForeColor = System.Drawing.Color.Green;









使用这个我解决我的问题谢谢你好!





using This i solve My Problem Thank U Guys!


这篇关于Microsoft Jet数据库引擎无法打开的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆