Access 提供兩種安全機制,行為截然不同:
Jet OLEDB:Database Password 參數User ID/Password 標準參數 → 無效// 正確連接字串 (Access 2003 .mdb)
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\data\db.mdb;Jet OLEDB:Database Password=yourpwd;
// Access 2007+ .accdb
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\data\db.accdb;Jet OLEDB:Database Password=yourpwd;
User ID/Password設定「使用者與群組帳戶」後,不修改連接字串即可連線(可能系統自動使用預設 Admin/空密碼),但使用者直接開啟檔案會提示輸入密碼,達到「防止隨意開啟編輯」的目的。
Microsoft.ACE.OLEDB.12.0 提供者(支援 .accdb、64 位元)app.config / appsettings.json,勿硬編碼