すべてのテーブルから別のスキーマの同じ名前のテーブルにデータをコピーしようとした経験を共有することにしました。私の経験は、サポートされていない、率直に言って制限されsp_MSforeachtable
た .
目的:データベース内のすべてのテーブルから、スキーマが異なる同じ名前のテーブルにデータをコピーする
についての簡単なメモ sp_MSforeachtable
。SO でこのストアド プロシージャについて質問するほとんどの場合、サポートされていない機能を使用するべきではないという回答が返ってきます。これは単に真実ではありません。私たちがすべきでないことは、サポートされていない機能に基づいてプラクティスや設計上の決定を行うことです。しかし、ある特定の時点で、サポートされていない機能が存在し、その時点で必要な機能を 1 回限りのスタイルで実行する場合は、運が良かったと考えて、ぜひそれを使用し、予期しない動作に注意してください。このような機能を使用する場合は、出力がすばやく簡単に検証できる単純な操作に固執するのが最善です。
そうは言っても、また にはいくつかの実際の制限があるためsp_MSforeachtable
、データベース内のすべての (または特定の) テーブルに対してステートメントを実行する別の方法を提示していますが、それほど複雑ではありません。私の問題を例として使用しています。