web-dev-qa-db-ja.com

データベースとスキーマの違い

SQL Serverのデータベースとスキーマの違いは何ですか?両方ともテーブルとデータのコンテナです。

スキーマが削除された場合、そのスキーマに含まれるすべてのテーブルも自動的に削除されますか、それともデータベースが削除されるときに削除されますか?

138
sqlchild

データベースはメインコンテナであり、データとログファイル、およびその中のすべてのスキーマが含まれています。あなたは常にデータベースをバックアップします。それはそれ自体が独立したユニットです。

スキーマは、データベース内のフォルダーに似ており、主に論理オブジェクトをグループ化するために使用されます。これにより、スキーマによるアクセス許可の設定が容易になります。

追加の質問の編集

drop schema test1

メッセージ3729、レベル16、状態1、行1
オブジェクト 'copyme'によって参照されているため、スキーマ 'test1'を削除できません。

使用中のスキーマは削除できません。最初にすべてのオブジェクトをスキーマから削除する必要があります。

関連資料:

  1. SQL Serverスキーマは何が良いですか?
  2. MSDN:ユーザースキーマ分離
154
RichardTheKiwi

スキーマは、データベース内のオブジェクトを分類する方法です。複数のアプリケーションが単一のデータベースを共有し、すべてのアプリケーションがアクセスする共通のデータセットがある場合に役立ちます。

18
demas

データベースはスキーマを持つデータのコンテナのようなものであり、スキーマはテーブルのレイアウトであり、そこにデータ型、関係、およびものがあります

12

スキーマは、データベース内のテーブル、テーブルの列、およびそれらの関係を示します。各データベースには独自のスキーマがあります。

7
Robert

SQL Serverのスキーマは、テーブル、ビュー、ストアドプロシージャなどの他のデータベースオブジェクトの定義を概念的に保持するオブジェクトです。

4
Hardik Mishra