注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

幽狼De博客

记录成长中的点点滴滴

 
 
 

日志

 
 

C#连接带mdw权限组密码的Access数据库  

2011-04-23 15:03:05|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
总共有以下8种:本人使用的正是第7种方法,已解决问题;
c#访问带有密码的Access数据库
在使用.net时发现访问有password 的Access与访问有password的Sql Server不一样,不用向导时Access connectionString=”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=path; Jet OLEDB:Database Password=pwd”.
如果用向导,记得要编辑“所有“标签中的Jet OLEDB:Database Password输入你的密码,这样就可以了.

用C#访问ACCESS数据库问题
最近这个项目中用到是ACCESS的数据库,开始没有使用密码进行连接:
String connectionString = "Provider=Microsoft.Jet.OleDb.4.0;Data Source=";
connectionString += @"c:\data\db\db.mdb";
OleDbConnection con = new OleDbConnection(connectionString);
con.Open();
是没有任何问题。

为了要使数据库安全一点,不能被用户直接打开编辑,所以想到给Access数据库设置个密码:从菜单“工具”->"安全"->"设置数 据库密码",这样设置后就不能正常访问这个数据库了,在连接字符串中加上User ID与Password字段还是不行。最后在"工具"->"安全"->"用户与组的账户"设置好密码,直接不用更改连接字符串就可以连接了。 这样处理后,用户打开时提示需要输入密码,也就达到了保护Access库的目的。


SQL SERVER 数据库的身份验证方式,分windows验证,SQL SERVER
验证两种。打开你的企业管理器。在工具菜单选择——〉SQL SERVER配置属性
(如果该项不可用,请展开你的数据库)切换到安全页,可以看到你的数据库
允许的验证方式。如果你不清楚该使用那个的话使用“SQL SERVER和Windows”
几个常用的数据库连接字符串:

1. 使用SQl提供者的,使用SQL SERVER验证方式连接SQL SERVER northwind数据库
   @"server=localhost;database=northwind;UID=sa;PassWord=";

2. 使用SQl提供者的,使用windows集成验证方式连接SQL SERVER northwind数据库
   @"Data Source=(local);Initial Catalog=Northwind;Trusted_Connection=Yes;";

3. 使用OLEDB提供者的,使用windows集成验证方式连接SQL SERVER northwind数据库
   @"Provider=SQLOLEDB;Data Source=(local);Initial Catalog=Northwind;Trusted_Connection=Yes;";

4. 使用OLEDB提供者的,使用SQL SERVER验证方式连接SQL SERVER northwind数据库
     @"Provider=SQLOLEDB;server=localhost;database=northwind;UID=sa;PassWord=";

5. 使用OLEDB提供者的,连接Oracle数据库,这个得建立别名,应该很少人使用
   @"Provider=MSDAORA;Data Source=MyDatabaseAlias; User ID=MyUID;Password=MyPassword";

6. 使用OLEDB提供者的,连接 Ms Access 数据库
   @"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=Data\MyDatabase.MDB";

7. 使用OLEDB提供者的,连接 Ms Access 数据库 要带密码呢?
    Provider=Microsoft.Jet.OLEDB.4.0;
    Data Source=C:\...\MySecure.MDB;
    Jet OLEDB:System database=C:\...\MySystem.MDW;
    User ID=MyUserName;Password=MyPassword;

8. 使用OLEDB提供者的,连接 Ms Access 数据库 还有一个带密码的
    Provider=Microsoft.Jet.OLEDB.4.0;
    Data Source=C:\...\MyPasswordProtected.MDB;
    Jet OLEDB:Database Password=MyPassword;
 

本人代码如下:

Web.config 文件

<appSettings>
    <add key="dbstr" value="Provider=Microsoft.Jet.OLEDB.4.0;Data source="/>
    <add key="dbwip" value="~/App_Data/数据库.mdb"/>
    <add key="dbmdw" value="~/App_Data/Security.mdw"/>
  </appSettings>

数据库连接基类文件WIPConnet.cs

/// <summary>
    /// 数据库连接,可连接多个数据库
    /// </summary>
    public static class WIPSQLConn
    {
        private static OleDbConnection _WIPConn;
        public static OleDbConnection WIPConn
        {
            get
            {
                string connectionString = System.Configuration.ConfigurationManager.AppSettings["dbstr"].ToString() + System.Web.HttpContext.Current.Server.MapPath(System.Configuration.ConfigurationManager.AppSettings["dbwip"]) + ";Jet OLEDB:System database=" + System.Web.HttpContext.Current.Server.MapPath(System.Configuration.ConfigurationManager.AppSettings["dbmdw"]) + ";User ID=*****(mdw设置的用户名);Password=*******(用户密码);";
                if (_WIPConn == null)
                {
                    _WIPConn = new OleDbConnection(connectionString);
                    _WIPConn.Open();
                }
                else if (_WIPConn.State == System.Data.ConnectionState.Closed)
                {
                    _WIPConn.Open();
                }
                else if (_WIPConn.State == System.Data.ConnectionState.Broken)
                {
                    _WIPConn.Close();
                    _WIPConn.Open();
                }
                return _WIPConn;
            }
        }
        /// <summary>
        /// 关闭连接
        /// </summary>
        public static void WIPConnClose()
        {
            if (_WIPConn.State == System.Data.ConnectionState.Open)
            {
                _WIPConn.Close();
            }
        }
    }
    #endregion

  评论这张
 
阅读(1236)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017