C#连接连接Access程序代码:--------------------------------------------------------------------------------using System.Data;
using System.Data.OleDb;......string strConnection="Provider=Microsoft.Jet.OleDb.4.0;";
strConnection+=@"Data Source=C:\BegASPNET\Northwind.mdb";OleDbConnection objConnection=new OleDbConnection(strConnection);......objConnection.Open();
objConnection.Close();...... --------------------------------------------------------------------------------解释: 连接Access数据库需要导入额外的命名空间,所以有了最前面的两条using命令,这是必不可少的! strConnection这个变量里存放的是连接数据库所需要的连接字符串,他指定了要使用的数据提供者和要使用的数据源. "Provider=Microsoft.Jet.OleDb.4.0;"是指数据提供者,这里使用的是Microsoft Jet引擎,也就是Access中的数据引擎,asp.net就是靠这个和Access的数据库连接的. "Data Source=C:\BegASPNET\Northwind.mdb"是指明数据源的位置,他的标准形式是"Data Source=MyDrive:MyPath\MyFile.MDB".ps:
 1."+="后面的"@"符号是防止将后面字符串中的"\"解析为转义字符.
 2.如果要连接的数据库文件和当前文件在同一个目录下,还可以使用如下的方法连接:
  strConnection+="Data Source=";
  strConnection+=MapPath("Northwind.mdb");
  这样就可以省得你写一大堆东西了!
 3.要注意连接字符串中的参数之间要用分号来分隔. "OleDbConnection objConnection=new OleDbConnection(strConnection);"这一句是利用定义好的连接字符串来建立了一个链接对象,以后对数据库的操作我们都要和这个对象打交道. "objConnection.Open();"这用来打开连接.至此,与Access数据库的连接完成.其余操作(插入,删除...)请参阅相关书籍

解决方案 »

  1.   

    第一步:asp.net的最大特点和优点就是实现了代码分离技术,也就是说我们定义的脚本放在一个单独的文件里面。那我们就使用代码分离技术,不再在网页里面放脚本的代码。我们既然要连接数据库,那我们先把所用类的名字空间引入,要不然写类名时要非常长。也就是说我们网页的那个*.cs的文件的头部加上using System.Data.OleDb   如果没有使用代码分离技术在aspx文件的头部加上<%@Import Namespace="System.Data"%>
    <%@Import Namespace="System.Data.OleDb"%>
             第二步:和asp一样,连接数据库要先写出来连接数据库用的字符串,这个字符串里面包括你所用的数据库类型,路径等参数。下面便是一个用于连接数据库的字符串的例子。string strConnection="Provider=Microsoft.Jet.OleDb.4.0;DataSource=";strConnection+=Server.MapPath("ssln.mdb");          //ssln.mdb就是数据库的名字我们定义了这个字符串以后就要定义一个oledbconnection来连接数据库了,下面给一个例子OleDbConnection conn=new OleDbConnection(strConnection);conn.Open(); //这里是调用 OleDbConnection类的open方法来打开数据库,我们对数据库进行操作之前 要先打开数据库,我们对数据库停止使用后要调用OleDbConnection类的close方法来关闭数据库,以防数据丢失     到这里我们已经实现了access数据库的连接,是不是非常简单。但到了这里你会有疑问,我只是连接了数据库,怎么对数据库进行操作呢?那就看我的第二篇文章,“asp.net对access数据库的操作”。
      

  2.   

    string sConnect = string.Format("Provider={0};Data Source={1}{2}",
    "Microsoft.Jet.OLEDB.4.0;",
    "路径",
    "xxx.mdb");
    OleDbConnection conn = new OleDbConnection(sConnect);
    conn.Open();
      

  3.   

    string sConnect = string.Format("Provider={0};Data Source={1}{2}",
                    "Microsoft.Jet.OLEDB.4.0;",
                    "路径",
                    "xxx.mdb");
    OleDbConnection conn = new OleDbConnection(sConnect);
    conn.Open();
      

  4.   

    好多朋友被ACCESS数据库在.net程序中相对路径的问题困扰,搞得每次移动程序都要去修改web.config 
    中数据库连接字符串的数据库路径。 
    好多人的web.config中的写法如下: 
    <appSettings> 
    <add key="OLEDBCONNECTIONSTRING" value="Provider=Microsoft.Jet.OLEDB.4.0;Data 
    Source=E:"web"App_Data"Data.mdb)"></add> 
    </appSettings> 
    程序中这样写: 
    MyConn = new OleDbConnection(System.Configuration.ConfigurationManager.AppSettings["OLEDBCONNECTIONSTRING"]); // 注释一下:VS2005和VS2003中的ConfigurationSettings写法不一样,具体区别自己查吧 
    这样程序运行时经常提示诸如以下的错误: 
    'C:"WINDOWS"system32"~"App_Data"Data.mdb'不是一个有效的路径。 确定路径名称拼写是否正确,以及是否连接到文件存放的服务器。 Data Source=~"App_Data"Data.mdb 
    就算用绝对路径正确,那么移植程序时还要去修改web.config,所以比较麻烦。 
    也有在web.config中使用象ASP那样的Server.MapPath取数据库路径的,但web.config不认识Server.MapPath,此方法也行不通。 
    后来通过摸索、参考其它程序,总结出如下方法,可以方便的移植程序路径而不必再去修改ACCESS数据库路径。 
    我在web.config中的写法如下: 
    <appSettings> 
    <add key="SQLConnString" value="provider=microsoft.jet.oledb.4.0;data source="/> 
    <add key="dbPath" value="~/App_Data/mydata.mdb"/> 
    </appSettings> 
    程序中的数据访问类中我把"SQLConnString"和"dbPath"取出来连接成一个字符串"CONN_STRING_NON_DTC" 
    public static readonly string CONN_STRING_NON_DTC = System.Configuration.ConfigurationManager.AppSettings["SQLConnString"].ToString() + System.Web.HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["dbPath"]) + ";"; 
    End of《ASP.NET连接ACCESS数据库web.config内路径最优写法 
    帖子二web.config 配置access的相对路径 
    本人使用的是VS 2005,经过调试成功,具体如何实现,代码如下(VB.Net示例,C#方法一样,在这里就不用说了) 
    首先在web.config文件<appSettings>节点中加入如下代码: 
    <!--数据源--> 
    <add key="myds" value="Provider=Microsoft.Jet.OLEDB.4.0;Data source="/> 
    <!--数据库相对路径--> 
    <add key="myconn" value="App_Data"VinikeData.mdb"/> 
    然后,写个类文件,调用上面的定义,代码如下: 
    '定义一个连接字符串,难点就在这里,网上很多用到了Server.MapPath,但是还是不行,注意这里用到了Request.MapPath(相对asp来说,这是asp所没用的) 
    Public connstr As String = ConfigurationSettings.AppSettings("myds") + HttpContext.Current.Request.MapPath("~") + (ConfigurationSettings.AppSettings("myconn").Trim()) using System; 
    using System.Data; 
    using System.Configuration; 
    using System.Web; 
    using System.Web.Security; 
    using System.Web.UI; 
    using System.Web.UI.WebControls; 
    using System.Web.UI.WebControls.WebParts; 
    using System.Web.UI.HtmlControls; 
    using System.Data.OleDb; 
    /// <summary> 
    /// Connection 的摘要说明 
    /// </summary> 
    public class Connection 

    public Connection() 

        // 
        // TODO: 在此处添加构造函数逻辑 
        // 

         public static OleDbConnection connAccess() 
         { 
             OleDbConnection conn = new OleDbConnection(GetConnString()); 
             return conn; 
         } 
         private static string GetConnString() 
         { 
             return System.Configuration.ConfigurationSettings.AppSettings["ConnStr"] + System.Web.HttpContext.Current.Server.MapPath("~")+System.Configuration.ConfigurationSettings.AppSettings["DbPath"]; 
         } } 
      

  5.   

    字符串就是
    Provider=Microsoft.Jet.OLEDB.4.0; Data Source=数据库路径Data Source一定要有空格