Access のユーザー インターフェースからパスワードとして設定可能な文字列を ADO 2.8 から ALTER DATABASE PASSWORD を利用した場合、特定の文字が含まれたパスワードの設定が出来ない

適用対象: Access 2010Microsoft Office Access 2007Microsoft Office Access 2003

現象


Microsoft Access 2010、Microsoft Office Access 2007、Microsoft Office Access 2003、Microsoft Office Access 2002、または Microsoft Access 2000 のユーザー インターフェースからパスワードとして設定可能な文字列を Microsoft ActiveX Data Objects 2.8 から ALTER DATABASE PASSWORD を利用して設定すると、その文字列に "]" または "`" の文字が含まれる場合、以下のエラー メッセージが表示されパスワードの設定ができません。

実行時エラー '-2147467259(80004005)': SQL 構文が正しくありません。パスワードが必要です。

また、文字列に ";" を指定すると、以下のエラー メッセージが表示されパスワードの設定ができません。



実行時エラー '-2147467259(80004005)': パスワードが正しくありません。


なお、";" は Access のユーザインターフェースからもパスワードとして設定することができません。

状況


この動作は仕様です。

詳細


問題の再現手順

  1. KB 304915 の "データベースのパスワード設定" の手順に従い、サンプル コードを実行できるようにします。
  2. サンプル コードの、以下の箇所を書き換え実行します。
    変更前 : On Error Resume Next
    変更後 : 'On Error Resume Next

    変更前 : sqlExecStr = "ALTER Database Password " & newpassword & "``"
    変更後 : sqlExecStr = "ALTER DATABASE PASSWORD []] []"

結果

以下のエラー メッセージが表示されます。

実行時エラー '-2147467259(80004005)': SQL 構文が正しくありません。パスワードが必要です。

関連情報


ADO によるデータベース パスワードの変更方法を参照するには、次の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
304915 ADO によるデータベース パスワードの変更方法