我用的是access 2007  数据库  格式是aa.accdb  
1。数据库的链接格式 是
<add key="sqlcon" value="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:/Inetpub/wwwroot/Company_Appraisal/App_Data/Company_Appraisal.accdb;Persist Security Info=False"/>如果按照上面的绝对路径  就会出现错误不可识别的数据库格式 'C:\Inetpub\wwwroot\Company_Appraisal\App_Data\Company_Appraisal.accdb'。
2。数据库的链接格式 是
<add key="sqlcon" value="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=../App_Data/Company_Appraisal.accdb;Persist Security Info=False"/>出现的错误是:
'C:\WINDOWS\App_Data\Company_Appraisal.accdb'不是一个有效的路径。 确定路径名称拼写是否正确,以及是否连接到文件存放的服务器。 
两种链接的方法 都出现错误啊?谁个帮帮啊?

解决方案 »

  1.   

    string virtualPath = System.Web.HttpContext.Current.Request.PhysicalApplicationPath;//得到网站的根目录路径
    string strConn = "Provider=Microsoft.Jet.oledb.12.0; data Source=" + virtualPath + "App_Data/myDB.mdb;User Id=admin;Password=;";
      

  2.   

    连上了  但是又出现一个问题  
    这是数据库连接(注意 是access 2007  格式是accdb) string strcon="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=..\\App_Data\\data.accdb;Persist Security Info=False"; 上面的连接出现错误 'C:\WINDOWS\App_Data\data.accdb'不是一个有效的路径。 确定路径名称拼写是否正确,以及是否连接到文件存放的服务器。 连接语句正确  路径也正确  为什么啊? 除非 给它绝对路径  不然就出错啊 老是出现  'C:\WINDOWS\App_Data\data.accdb'  可是我的数据库  放在项目(C:\Inetpub\wwwroot\Access 2007\App_Data)文件夹下啊  怎么老是跑到 'C:\WINDOWS\App_Data\data.accdb'文件夹下 
      

  3.   


    乖乖的用程序拼接物理地址上去就可以了。数据库驱动程序的根目录是C:\WINDOWS\System32,所以你不能用直接套相对路径。