データベースでスキーマを使用するのは、テーブル、ビュー、ストアドプロシージャ、関数、およびその他のオブジェクトをサブジェクトごとにグループ化するためだけです。スキーマを使用する必要がある場所と、スキーマタブがSSMSのセキュリティタブの下にある理由がわかりません。
編集 :
データベースでスキーマを使用するのは、テーブル、ビュー、ストアドプロシージャ、関数、およびその他のオブジェクトをサブジェクトごとにグループ化するためだけです。スキーマを使用する必要がある場所と、スキーマタブがSSMSのセキュリティタブの下にある理由がわかりません。
編集 :
スキーマは、オブジェクトを論理的にグループ化する方法であり、個別ではなくスキーマを通じて一貫したアクセス許可をすべてのオブジェクトに適用できます。検討:
create schema [foo] authorization [dbo]
grant select on schema::[foo] to [user1]
create table [foo].[table_1] (...)
create table [foo].[table_2] (...)
create table [foo].[table_3] (...)
すべてのテーブルを 1 つのスキーマに配置することで、スキーマ レベルでパーミッションを付与することができ、そのパーミッションの概念はそこに含まれるすべてのテーブルに浸透しました。
この配置は、ユーザー (ロールとユーザー) のセキュリティとスキーマの間のマッピングのためだと思います。テーブルや列などのスキーマのデータ構造ではありません。
セキュリティタブに移動した場合 -> ユーザー -> ユーザーをダブルクリックします。そのユーザーと、SCHEMA の所有またはロール メンバーシップとの間のマッピングを編集できることがわかります。
あなたに役立つことを願っています。