1. ホーム
  2. sql-server-2005

[解決済み】SQL Serverスキーマは何の役に立つのか?

2022-04-15 23:57:32

質問

私はSQLデータベース、特にSQL Serverを使うのに初心者ではありません。 しかし、私は主にSQL 2000を使用してきたので、2005+のスキーマにはいつも困惑しています。 スキーマの基本的な定義は知っていますが、典型的な SQL Server の展開では、スキーマは実際に何のために使われるのでしょうか?

私はいつもデフォルトのスキーマを使うだけでした。 なぜ特殊なスキーマを作成する必要があるのでしょうか? なぜ組み込みのスキーマを割り当てるのでしょうか?

EDIT: はっきり言うと、私はスキーマのメリットを求めているのだと思います。 セキュリティスキームとして使うだけなら、データベースのロールがすでにその役割を担っているように思えますが......ええと......。 また、名前空間指定子として使用することは、所有権(dbo対userなど)で可能なことだったように思います。

私が言いたいのは、オーナーやロールではできなかったことがスキーマではできるのか、ということです。 その具体的な利点は何ですか?

どのように解決するのか?

スキーマは、テーブル、プロシージャ、ビューを論理的にグループ化します。従業員関連のオブジェクトはすべて employee スキーマなど。

また、1つのスキーマだけに権限を与え、ユーザーは自分がアクセスできるスキーマだけを見ることができ、それ以外のスキーマは見られないようにすることもできます。