Share via


識別子 (DMX)

Microsoft SQL Server Analysis Services のオブジェクトはすべて識別子を持っています。オブジェクトの名前が識別子となります。サーバー、データベース、およびデータベース オブジェクト (データ ソース、データ ソース ビュー、キューブ、ディメンション、マイニング モデルなど) は識別子を持っています。

データ マイニング拡張機能 (DMX) には 2 つのクラスの識別子があります。

  • 標準識別子

  • 区切られた識別子

オブジェクト識別子は、オブジェクトの定義時に作成されます。オブジェクトを参照するには、この作成された識別子を使用します。識別子は 100 文字以下である必要があります。

標準識別子

DMX の標準識別子は、識別子の形式に関する Analysis Services の規則に準拠しています。DMX の標準識別子には区切り記号は必要ありません。区切りなし標準識別子を使用する DMX ステートメントの例は、次のとおりです。

SELECT * FROM Clustering.CONTENT

標準識別子に関する規則

標準識別子の形式に関する規則は、次のとおりです。

  1. 標準識別子の最初の文字は、次のうちのいずれかである必要があります。

    • Unicode 規格 2.0 で定義されている文字。これには、ラテン文字 a ~ z と A ~ Z、および各国言語の文字が含まれます。

    • アンダースコア (_)。

  2. 名前の先頭以外では、次の文字を使用できます。

    • Unicode 規格 2.0 で定義されている文字

    • Basic Latin スクリプトまたはその他の各国スクリプトの 10 進数

    • アンダースコア (_)

  3. DMX 予約語を識別子として使用することはできません。DMX では、予約語の大文字と小文字は区別されません。詳細については、「予約されているキーワード (DMX)」を参照してください。

  4. 埋め込まれたスペースや特殊文字を識別子に含めることはできません。

これらの規則に準拠していない識別子を DMX ステートメントで使用する場合は、その識別子をかっこで区切る必要があります。

区切られた識別子

区切られた識別子はかっこ ([ ]) で囲みます。これらの規則に準拠した区切られた識別子を使用した DMX ステートメントの例は、次のとおりです。

SELECT * FROM [Marketing_Clusters].CONTENT

標準識別子の形式に関する規則に従わない識別子は必ず区切り記号で区切る必要があります。スペースを含んでいる区切られた識別子を使用した DMX ステートメントの例は、次のとおりです。

SELECT * FROM [Targeted Mailing].CONTENT

区切られた識別子を使用するのは、次のような場合です。

  • 予約語をオブジェクト名やオブジェクト名の一部に使用する場合。

    予約語はオブジェクト名に使用しないことをお勧めします。以前のバージョンの Analysis Services からアップグレードしたデータベースには、以前のバージョンの Analysis Services では予約されていなかったものの、SQL Server 2005 Analysis Services では予約語となっている語を含む識別子が含まれている場合があります。オブジェクト名の変更が可能になるまで、このようなオブジェクトを参照するには、区切られた識別子を使用します。

  • 修飾された識別子として示されていない文字を使用する場合。

    Analysis Services では、現在のコード ページ内の文字はすべて区切られた識別子に使用することができますが、特殊文字を区別しないでオブジェクト名に使用すると、DMX ステートメントの読み取りおよびメンテナンスが難しくなる場合があります。

区切られた識別子に関する規則

区切られた識別子の形式に関する規則は、次のとおりです。

  1. 区切られた識別子は、標準識別子の場合と同じ文字数、つまり、区切り記号を除いた 1 ~ 100 文字で構成されます。

  2. 識別子の本体は、区切り記号を含め、現在のコード ページ内で使用される文字の任意の組み合わせで構成されます。識別子の本体に区切り記号が含まれている場合は、特別な処理が必要になります。

    • 識別子の本体に左かっこ ([) が含まれている場合は、処理を行う必要はありません。

    • 識別子の本体に右かっこ (]) が含まれている場合は、コード ページ内で表現するために右かっこを 2 つ (]]) 指定する必要があります。

複数の部分に区切られた識別子

修飾されたオブジェクト名を使用する際、場合によってはオブジェクト名を構成している複数の識別子を区切る必要があります。各識別子は個々に区切ってください。