オブジェクトの名前付け規則 (Analysis Services)
適用対象: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium
このトピックでは、オブジェクトの名前付け規則と、SQL Server Analysis Servicesのコードまたはスクリプトで、オブジェクト名に使用できない予約語と文字について説明します。
命名規則
すべてのオブジェクトには、親コレクションのスコープ内で一意である必要がある Name プロパティと ID プロパティがあります。 たとえば、所属するデータベースが異なっていれば、2 つのディメンションが同じ名前であってもかまいません。
手動で指定できますが、 ID は通常 、オブジェクトの作成時に自動生成されます。 モデルの構築を開始した後は 、ID を 変更しないでください。 モデル全体のすべてのオブジェクト参照は、 ID に基づきます。 したがって、 ID を 変更すると、モデルが破損する可能性があります。
DataSource オブジェクトと DataSourceView オブジェクトには、名前付け規則に関する注目すべき例外があります。 データソース ID は、現在のデータベースへの参照として、一意ではない単一のドット (.) に設定できます。 2 つ目の例外は DataSourceView です。これは、.NET Framework内の DataSet オブジェクトに対して定義されている名前付け規則に従います。ここで、 Name は識別子として使用されます。
Name プロパティと ID プロパティには、次の規則 が 適用されます。
名前では大文字と小文字は区別されません。 "sales" というキューブと"Sales" という名前のキューブを同じデータベースに含めることはできません。
オブジェクト名の先頭または末尾にスペースを付けることは許されません。ただし名前の途中にスペースを入れることはできます。 先頭および末尾にあるスペースは暗黙的に切り捨てられます。 これは、オブジェクトの 名前 と ID の両方に適用されます。
最大文字数は 100 文字です。
識別子の最初の文字に関する特別な要件はありません。 最初の文字には、任意の有効な文字を指定できます。
予約語と予約文字
予約語は英語で、オブジェクト名に適用されます。キャプションには適用されません。 不注意で予約語をオブジェクト名に使用すると、検証エラーが発生します。 多次元モデルとデータ マイニング モデルでは、どのような場合でも、以下で説明する予約語をオブジェクト名で使用することはできません。
テーブル モデルでは、データベース互換性が 1103 に設定されている場合、一部のオブジェクトで検証ルールが緩められており、一部のクライアント アプリケーションの拡張文字要件と名前付け規則のためにルールに準拠していません。 これらの条件を満たすデータベースは、厳格でない検証ルールに従います。 この場合、制限された文字がオブジェクト名に使用されていても、検証に合格することがあります。
予約語
AUX
CLOCK$
COM1 ~ COM9 (COM1、COM2、COM3 など)
CON
LPT1 ~ LPT9 (LPT1、LPT2、LPT3 など)
NUL
PRN
NULL は XML 内の文字列の文字として許容されません。
予約文字
次の表では、特定のオブジェクトで無効な文字を示します。
Object | 無効な文字 |
---|---|
サーバー | サーバー オブジェクトに名前を付けるときは、Windows サーバーの名前付け規則に従います。 詳細については、「 名前付け規則 (Windows)」 を参照してください。 |
DataSource | : / \ * | ? " () [] {}<> |
Level または Attribute | . , ; ' ` : / \ * | ? " & % $ ! + = [] {}<> |
ディメンション または 階層 | . , ; ' ` : / \ * | ? " & % $ ! + = () [] {}<,> |
他のすべてのオブジェクト | . , ; ' ` : / \ * | ? " & % $ ! + = () [] {}<> |
例外: 予約文字を使用できる場合
先に述べたように、特定のモダリティと互換性レベルを持つデータベースでは、予約文字を含むオブジェクト名を使用できます。 拡張文字を使用できる表形式データベース (1103 以上) の場合、ディメンション属性、階層、レベル、メジャー、および KPI オブジェクト名で予約文字を使用できます。
サーバー モードとデータベース互換性レベル | 予約文字を使用できるか |
---|---|
MOLAP (すべてのバージョン) | いいえ |
表形式 - 1050 | いいえ |
表形式 - 1100 | いいえ |
表形式 - 1130 以上 | Yes |
データベースは既定の ModelType を持つことができます。 既定値は多次元モデルと同等です。そのため、列名での予約文字の使用はサポートされません。