2013-10-03 43 views
-1

我有一個C#應用程序,其Access作爲其後端數據庫。該數據庫受密碼保護並自動變爲只讀。我需要以編程方式使其可讀寫。爲此,我寫了下面的代碼:ALTER DATABASE查詢訪問不工作

OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Windows\Database5.accdb;Jet OLEDB:Database Password=<redacted>;"); 
con.Open(); 
OleDbCommand cmd = new OleDbCommand("ALTER DATABASE Database5.accdb SET READ_WRITE", con); 
OleDbDataReader dr = cmd.ExecuteReader(); 
if (dr.Read() == true) 
{ 
    MessageBox.Show("database altered"); 
} 
else 
{ 
    MessageBox.Show("not altered"); 
} 

我得到的錯誤是:invalid SQL syntax. Expected token: password

+1

據我所知沒有ALTER DATABASE ..... SET READ_WRITE爲MS Access數據庫 – Steve

+2

你真的不應該發佈你的密碼。 – tnw

+0

@tnw:你可以告訴我如何完成我的要求 –

回答

2

如記錄hereALTER DATABASE在訪問SQL只能用來更改數據庫密碼。與T-SQL(SQL Server)不同的是,Access中沒有ALTER DATABASE查詢來更改數據庫的讀/寫狀態。