次の方法で共有


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

データベース オブジェクトを別のスキーマに移動する場合、データベース リファクタリングを使用すると、データベース プロジェクト内のそのオブジェクトへのすべての参照をすばやく正確に更新できます。 たとえば、セキュリティを強化したり、より論理的に整理したりするために、データベースを複数のスキーマに分割するとします。 このように分割すると、1 つ以上のオブジェクトを新しいスキーマに移動するだけでなく、そのオブジェクトへの完全修飾された参照を更新する必要があります。 すべての参照が新しいスキーマを参照するように手動で変更すると、誤って設定する可能性があります。 データベース リファクタリングを使用すると、これらの参照を自動的に検出して更新できます。

リファクタリング ログでの意図の保持

データベース オブジェクトを別のスキーマに移動すると、データベース プロジェクトのリファクタリング ログにエントリが追加されます。 変更を配置する場合、配置先環境内の対応するオブジェクトが意図した名前に変更されたことを確認するのに、このログが役立ちます。 名前が変更されない場合、既存のオブジェクトが削除され、新しい名前のオブジェクトが追加されます。 このログは、プロジェクト名.refactorlog という名前の XML ファイルに保持されます。 データベース プロジェクトを構成する他のファイルをバージョン コントロールにチェックインするときに、このファイルもチェックインします。 プロジェクト名.refactorlog ファイルには、配置の実行中に特別な処理が必要なリファクタリング操作に関する情報のみが格納されます。

配置

リファクタリングを使用すると、運用データベースではなく、データベース プロジェクトのみが更新されます。 この方法により、バージョン コントロールやチーム開発など、データベース プロジェクトのすべての利点を利用できます。 変更を配置するときに、データベース プロジェクトに対する変更の意図をリファクタリング ログに保持できます。 たとえば、DROP 操作や ADD 操作の代わりに名前の変更を実行できます。

詳細については、「データベースのビルドおよび分離開発環境への配置」を参照してください。

注意

チーム環境では、アプリケーション単体テストおよびデータベース単体テストを実行してから、変更を運用サーバーに配置する必要があります。 詳細については、「データベースのチーム開発の開始」を参照してください。

一般的なタスク

次の表に、このシナリオをサポートする一般的なタスクの説明と、それらのタスクを正常に完了する方法の詳細へのリンクを示します。

タスク

関連する参照先

実習を行う: チュートリアルに従って作業すると、他の種類のリファクタリングに加え、データベース オブジェクトを別のスキーマに移動する方法を習得できます。

チュートリアル: データベース リファクタリング手法の適用

データベース オブジェクトを別のスキーマに移動する: リファクタリングを使用すると、データベース オブジェクトを別のスキーマに移動し、データベース プロジェクト内のそのオブジェクトへのすべての参照を自動的に更新できます。 リファクタリング操作の一部として、適用前に変更をプレビューできます。

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

リファクタリング操作を元に戻す: リファクタリング操作を元に戻す必要がある場合は、Visual Studio の現在のセッションのリファクタリング操作を元に戻すことができます。

方法: データベース リファクタリング操作を元に戻す

データベース リファクタリングの変更を配置する: データベース プロジェクトをリファクタリングした後、対象データベースに変更を配置する必要があります。 通常、バージョン コントロールにチェックインする前に、分離開発環境に変更を配置してテストします。

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

問題をトラブルシューティングする: データベース リファクタリングに関する一般的な問題をトラブルシューティングする方法についてさらに詳しく学習できます。

リファクタリングに関する問題のトラブルシューティング

関連するシナリオ

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

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

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

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

参照

概念

データベースのコードとデータのリファクタリング

データベース プロジェクトとサーバー プロジェクトの概要