データ ソースにリンクされているWord差し込み印刷メイン ドキュメントを開くと、"これを開くと次の SQL コマンドが実行されます" というメッセージが表示されます

重要 この記事には、セキュリティ設定を下げる方法や、コンピューターのセキュリティ機能をオフにする方法を示す情報が含まれています。 これらの変更によって特定の問題を回避できますが、 変更を行う前に、特定の環境でこの回避策を実行した際に生じるリスクを評価することをお勧めします。 この回避策を実行する場合は、システムを保護するために、ここに記載された処理以外にも適切な処理を実行してください。

現象

Microsoft Office Wordで差し込み印刷メイン ドキュメントを開くと、次のいずれかの現象が発生します。

  • 次のプロンプトが表示されます。
    このドキュメントを開くと、次の SQL コマンドが実行されます。
    SELECT * FROM your datasource
    データベースのデータがドキュメントに配置されます。 続行しますか?メモ [ はい] をクリックすると、差し込み印刷メイン ドキュメントが開き、データ ソースが添付されます。 [いいえ] をクリックすると、データ ソースが添付されていない差し込み印刷メイン ドキュメントが開きます。

    Microsoft Office Word 2007 で、プロンプトが表示されている間、次の操作を実行します。

    • 受信したメッセージに関連付けられている一意の番号を確認するには、Ctrl キーと Shift キーを押しながら I キーを押します。 このメッセージの右下隅に次の番号が表示されます。

      201235

  • Microsoft Visual Basic for Applications(VBA) を使用して開いた差し込み印刷メイン ドキュメントには、データ ソースが添付されていません。

注 この記事の症状が発生したときに、プログラム (Microsoft Access や Microsoft Visual FoxPro など) を使用して、差し込み印刷メイン ドキュメント ファイルをプログラムで開いている可能性があります。

原因

「現象」セクションで説明されているプロンプトは仕様です。

このプロンプトは、以降のすべてのバージョンの Microsoft Office に存在し、Office XP Service Pack 3 で導入されました。 このプロンプトは、[適用先] セクションに記載されている製品に追加され、差し込み印刷の安全性が高くなります。 プロンプトが表示されたときに [はい ] をクリックすると、コンピューターでコードを実行できます。 悪意のあるユーザーは、アクセス権を持つデータを盗んだり破棄したりするように設計された SQL クエリを作成できる可能性があります。 プロンプトが表示されたときに [いいえ ] をクリックした場合、コードの実行は許可されません。

メモ VBA で DisplayAlerts=none を設定すると、VBA を使用してファイルを開くときにプロンプトは表示されませんが、NO オプションを使用してドキュメントを開き、差し込み印刷メイン ドキュメントにデータが添付されません。

回避策

警告 この回避策により、コンピューターまたはネットワークが、悪意のあるユーザーやウイルスなどの悪意のあるソフトウェアによる攻撃に対して脆弱になる可能性があります。 この資料の情報は、記載されている回避策をユーザーが自己の判断で使用することを前提に提供されているものであり、この回避策をお勧めするものではありません。 この回避策は、自己の責任においてご使用ください。

重要: このセクション、メソッド、またはタスクには、レジストリの変更方法が記載されています。 ただし、レジストリを誤って変更すると、深刻な問題が発生する可能性があります。 そのため、この手順は必ず慎重に行ってください。 さらなる保護のため、レジストリは変更する前にバックアップしてください。 こうしておけば、問題が発生した場合にレジストリを復元できます。 レジストリのバックアップ方法および復元方法の詳細を参照するには、以下のサポート技術情報番号をクリックしてください。

322756 Windows でレジストリをバックアップおよび復元する方法

この記事で提供されている免責事項を読んで理解し、差し込み印刷を使用して開くドキュメントが信頼できるソースからのドキュメントである場合は、「現象」セクションで説明されている動作を回避できます。

この動作を回避するには、SQLSecurityCheck レジストリ キーを使用してセキュリティ プロンプトを無効にします。

SQLSecurityCheck レジストリ キーを使用してセキュリティ プロンプトを無効にするには、お使いのバージョンの Microsoft Wordの適切な手順に従います。

Word 2013

HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Word\Options
            
"SQLSecurityCheck"=dword:00000000

  1. レジストリ エディターを起動します。

  2. 次のレジストリ キーを見つけてクリックします。

    HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Word\Options

  3. [編集] メニューの [新規] をポイントし、[DWORD 値] をクリックします。

  4. [ 名前] に「」と入力します。

    SQLSecurityCheck

  5. [SQLSecurityCheck] をダブルクリックします。

  6. [ 値データ ] ボックスに、次のように入力します。

    00000000

  7. [OK] をクリックします。

          

Word 2010

HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Word\Options
            
"SQLSecurityCheck"=dword:00000000

  1. レジストリ エディターを起動します。

  2. 次のレジストリ キーを見つけてクリックします。
    HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Word\Options

  3. [編集] メニューの [新規] をポイントし、[DWORD 値] をクリックします。

  4. [ 名前] に「」と入力します。
    SQLSecurityCheck

  5. [SQLSecurityCheck] をダブルクリックします。

  6. [ 値データ ] ボックスに、次のように入力します。
    00000000

  7. [OK] をクリックします。

Word 2007

HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Word\Options
            
"SQLSecurityCheck"=dword:00000000

  1. レジストリ エディターを起動します。

  2. 次のレジストリ キーを見つけてクリックします。
    HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Word\Options

  3. [編集] メニューの [新規] をポイントし、[DWORD 値] をクリックします。

  4. [ 名前] に「」と入力します。
    SQLSecurityCheck

  5. [SQLSecurityCheck] をダブルクリックします。

  6. [ 値データ ] ボックスに、次のように入力します。
    00000000

  7. [OK] をクリックします。

Word 2003

HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Word\Options
            
"SQLSecurityCheck"=dword:00000000

  1. レジストリ エディターを起動します。

  2. 次のレジストリ キーを見つけてクリックします。
    HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Word\Options

  3. [ 編集] をクリックし、[ 新規] をポイントし、[ DWORD 値] をクリックします。

  4. [ 名前] に「」と入力します。
    SQLSecurityCheck

  5. [SQLSecurityCheck] をダブルクリックします。

  6. [ 値データ ] ボックスに、次のように入力します。
    00000000

  7. [OK] をクリックします。

Word 2002 Service Pack 3

HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Word\Options
            
"SQLSecurityCheck"=dword:00000000
手順は次のとおりです。

  1. レジストリ エディターを起動します。
  2. 次のレジストリ キーを見つけてクリックします。
    HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Word\Options
  3. [ 編集] をクリックし、[ 新規] をポイントし、[ DWORD 値] をクリックします。
  4. [ 名前] に「」と入力します。
    SQLSecurityCheck
  5. [SQLSecurityCheck] をダブルクリックします。
  6. [ 値データ ] ボックスに、次のように入力します。
    00000000
  7. [OK] をクリックします。

状態

この動作は仕様です。