次の方法で共有


方法: 別のスキーマにデータベース オブジェクトを移動する

スキーマ ビューでデータベース リファクタリングを使用すると、データベース オブジェクトをスキーマ間で移動できます。 その変更を、データベース プロジェクトに適用する前にプレビューできます。 その後、変更を配置して対象データベースを更新する必要があります。 リファクタリング ログにはリファクタリング操作がすべて記録され、変更を配置するときに変更の意図を保持することができます。 詳細については、「別のスキーマへのデータベース オブジェクトの移動」を参照してください。

別のスキーマにデータベース オブジェクトを移動するには

  1. スキーマ ビューで、移動するオブジェクトを右クリックし、[リファクター] をポイントして、[スキーマへ移動] をクリックします。

    [スキーマへ移動] ダイアログ ボックスが表示されます。

    注意

    オブジェクトのリファクタリングは、コード ウィンドウやソリューション エクスプローラーからは実行できません。

  2. [新しいスキーマ] ボックスの一覧で、オブジェクトの移動先のスキーマの名前をクリックします。

  3. (省略可能) [変更のプレビュー] チェック ボックスをオンにします。

    注意

    単体テストとスクリプト内の参照を更新するには、このチェック ボックスをオンにする必要があります。 [変更のプレビュー] ダイアログ ボックスが表示されたら、それらの参照を更新するように指定します。 詳細については、「方法: リファクタリングの変更をプレビューする」を参照してください。

  4. (省略可能) [非修飾スクリプトおよび単体テストの参照に既定のプロジェクト スキーマ dbo を使用] チェック ボックスをオンにします。

    このチェック ボックスをオフに設定した場合や、スクリプトと単体テスト内で完全修飾名を指定していない場合、リファクタリングを使用してそれらの参照を更新することはできません。 このチェック ボックスをオンに設定したが、スクリプトと単体テスト内で完全修飾名を指定していない場合、これらのオブジェクトの既定のスキーマとプロジェクトの既定のスキーマは同じであると見なされます。

  5. (省略可能) [警告またはエラーを含むスキーマ オブジェクトの参照を更新する] チェック ボックスをオンにします。

    このチェック ボックスをオフにした場合、参照を含んでいるオブジェクトの定義でエラーまたは警告が発生すると、その参照は更新されません。 このチェック ボックスをオンにした場合、参照を含んでいるオブジェクトの定義でエラーまたは警告が発生したかどうかにかかわらず、その参照が更新されます。

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

    [変更のプレビュー] チェック ボックスがオンになっている場合は、[変更のプレビュー] ダイアログ ボックスが表示されます。 それ以外の場合は、オブジェクト名が更新され、オブジェクトがスキーマ ビューの新しい位置に表示されます。

    注意

    オブジェクトを別のスキーマに移動するときは、そのオブジェクトが定義されているファイルの名前を変更しないでください。 ファイル名を更新する場合は、ソリューション エクスプローラーで名前を変更する必要があります。

    手順 6 で説明したオプションのログ ファイルに加えて、データベース オブジェクトを別のスキーマに移動するたびに、プロジェクト名.refactorlog ファイルにエントリが書き込まれます。 このファイルはデータベース プロジェクトの一部であり、データベース プロジェクトを配置するときに使用されます。 このファイルは、バージョン コントロールにチェックインし、プロジェクトの他の共有資産と同じように管理する必要があります。 詳細については、「別のスキーマへのデータベース オブジェクトの移動」を参照してください。

参照

処理手順

方法 : データベース リファクタリングの変更を配置する

概念

別のスキーマへのデータベース オブジェクトの移動

データベース オブジェクトの名前の完全修飾

SELECT ステートメントでのワイルドカード文字の展開

サーバーまたはデータベースへの参照の名前変更

データベース オブジェクトへのすべての参照の名前変更