在使用.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;