-1

私は自分自身を完全にばかげたものにしないことを望みますが、その定義database schemaが私には100%明確ではないことを認めなければなりません。

データベース内のテーブルの青写真のようなものになると思いました。エンティティフレームワークに関してはDbContext、私の「データベーススキーマ」になります。

この記事(この質問で提案されている)を読んでいるのが間違っていることに気付き始めました。この記事では、共有データベース、個別のスキーマによってマルチテナンシーを実現できます。

誰かが詳しく説明できますか?

PS:私はこの質問を読みましたが、それは私のややn00bishの質問に実際には答えません...

4

1 に答える 1

2

一般的な理解は、あなたが参照した質問で説明されたとおりです

スキーマ:データベース:テーブル::間取り図:家:部屋

つまり、スキーマはデータベースの青写真であり、その意味で、DBContext+移行は大まかにデータベーススキーマと見なすことができます。

ただし、データベースでスキーマという単語を使用する2つ目の方法もあります。これは、データベース内の分割セット(テナント)として使用されます。これは通常、セキュリティのために使用されます。

すべてのテーブルは特定のスキーマ(DBOなど)内で定義されており、クエリを実行すると、実際には特定のスキーマのテーブルに対してクエリが実行されます。

SELECT * FROM [database].[schema].[table]

あなたの質問に答えるために、これには2つの意味があります。1つは単語の英語の意味であり、もう1つは実際のSQLの意味です(これはテナンシーに関係しています)

ここに画像の説明を入力してください

于 2013-03-03T22:49:11.953 に答える