0

私は SQL Server 2008 を初めて使用しますが、スキーマについて読んだ後、この質問があります。

現在、新しいクライアントごとに、手動で新しいデータベースを作成し、既存のデータベースからすべてのオブジェクト (テーブル/ビュー/ストアド プロシージャなど) をインポートする必要があります。開発者からの更新 (例: テーブル構造の変更、ストアド プロシージャなど) があるたびに、すべてのデータベースで変更を行う必要があります。DBComparer を使用してデータベースの違いを修正するのにうんざりしています。

すべてのテーブル/ストアド プロシージャ/ビューを含む 1 つの「マスター スキーマ」を持つことは可能ですか? そのため、すべての「クライアント データベース」はこの「マスター スキーマ」を参照できますが、独自のデータを問題なく維持できます。

4

2 に答える 2

0

いいえ、できません。Schemataはデータベースに存在します。

複数のクライアントデータベースSIMILARスキーマ、はい。ただし、1つずつアップグレードする必要があります。スキーマはマスターにありません-すべてのデータベースにあり、これを変更することはできません。実際、すべてのスキーマは完全に独立しており、1つのデータベースに01個の「同一のコンテンツ」スキーマを含めることができます。

于 2013-01-02T12:30:48.617 に答える
0

単一の「マスター」スキーマを持つことは可能です。この「マスター」スキーマを持つことはおそらく不可能であり、それでも各クライアントが独自のデータを問題なく維持することはできません。

あなたが見ているのは、一種のマルチテナント アーキテクチャです。Microsoft のMulti-Tenant Data Architectureは、この問題の良い入門書です。

このSOの回答には、考慮する必要があるさまざまなトレードオフの概要がありました。

于 2013-01-02T12:32:10.283 に答える