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;