|
■No54689 (天野 さん) に返信
> mdbファイルのパスワードを変更することはCompactDatabase(OldDb, NewDb);で今まで可能だったのですが、
> 新しいファイル形式(accdb)のパスワードをC#から変更する方法が分からなくて困っています。
たとえばこんな感じで。
Microsoft.JET.OLEDB.4.0 でも
Microsoft.ACE.OLEDB.12.0 でも使えます。
OleDbConnectionStringBuilder sb = new OleDbConnectionStringBuilder();
sb.Provider = "Microsoft.ACE.OLEDB.12.0";
sb.DataSource = @"C:\db1.accdb";
sb["Mode"] = "Share Exclusive";
sb["Jet OLEDB:Database Password"] = oldPassword;
using (OleDbConnection con = new OleDbConnection(sb.ToString()))
{
con.Open();
using (OleDbCommand cmd = con.CreateCommand())
{
cmd.CommandText = string.Format(
"ALTER DATABASE PASSWORD {0} {1}", newPassword, oldPassword);
cmd.ExecuteNonQuery();
}
con.Close();
}
|