web-dev-qa-db-ja.com

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

私はdb2のスキーマとデータベースの違いが何であるか理解できません。たとえば、このSQLはとても混乱します。

CREATE TABLE schema1.table1
 ....
 ....
 ....
IN database1.tabspace1

この場合のデータベースにはタブスペースが含まれているのに、スキーマにはテーブルが含まれていると言えますか?

1
malmo

この単純な質問は異常な量の議論を引き起こしており、私は 信頼できる情報源 を引用せざるを得ません。

データベースは、相互に関連するテーブルにすべてのデータを保存します。データが共有され、重複が最小限に抑えられるように、テーブル間に関係が確立されます。

table spaceは、テーブル、インデックス、ラージオブジェクト、およびロングデータを含むストレージ構造です。これらは、データベース内のデータを、システム上のデータが格納されている場所に関連する論理ストレージグループに編成するために使用されます。

schemaは名前付きオブジェクトのコレクションです。これらのオブジェクトを論理的にグループ化する方法を提供します。スキーマは名前修飾子でもあります。複数のオブジェクトに同じ自然名を使用し、それらのオブジェクトへのあいまいな参照を防ぐ方法を提供します。

6
mustaccio

データベースはスキーマのコレクションであり、スキーマはテーブル/ビュー/ UDF/...のコレクションです。

2
Charles