2 つの SQL Server 2000 データベースがあるとします。
PARTS
CUSTOMERS
それらを SQL Server 2008 に復元して 1 つの結合データベースにすることができますが、スキーマを使用して分離すると、PARTS スキーマと CUSTOMERS スキーマが存在することになりますか? 2000 年のデータベースを「2008 年のスキーマに」復元できますか?
2 つの SQL Server 2000 データベースがあるとします。
PARTS
CUSTOMERS
それらを SQL Server 2008 に復元して 1 つの結合データベースにすることができますが、スキーマを使用して分離すると、PARTS スキーマと CUSTOMERS スキーマが存在することになりますか? 2000 年のデータベースを「2008 年のスキーマに」復元できますか?
スキーマを利用して 2008 インスタンスで復元されたデータベースを操作せずに、目的を達成することはできないと思います。
ソースデータベース(あなたの場合は2つ)をバックアップすると、コピー先にそのまま復元されます。これが主なポイントであり、コピー間の不一致を回避します。したがって、定義上、バックアップされたデータベースとは構造的に異なる復元結果が得られることはありません。
これを実現する方法は、最初にバックアップ/復元プロセスを処理してから、復元されたデータベースを取得し、必要な実際の構造に結合するスクリプトを作成することです。
これがお役に立てば幸いです。
Q: 2000 年のデータベースを 2008 のスキーマに復元することは可能ですか?
A: はい。.bak バックアップ ファイルがある場合は、単純に「復元」できるはずです。
同様の復元を行う際に問題が発生した人のリンクと、それらがどのように解決されたかを次に示します。
「置換による復元」を絶対に行うことができます。
古い MSSQL 2000 バックアップを (たとえば、一時データベースに) 復元したら、"select into" を実行したり、データを別のデータベース (おそらく別のスキーマ) にコピーおよび/またはマージしたりできます。
「バックアップ」ファイルに関する限り、MSSQL 2008 環境で MSSQL 2000 バックアップを使用しても問題は比較的少なく、互換性はかなり良好です。
私見..PSM
2 つのデータベースを 1 つのデータベースに復元することはできません。各データベースを個別に復元してから、それらを手動で結合する必要があります。または、各データベースの T-SQL スクリプトを作成し、2 つのスクリプトを適切に組み合わせてからスクリプトを実行することもできます。