次の方法で共有


Create コマンド (TMSL)

適用対象:SQL Server 2016 以降の Analysis Services Azure Analysis Services Fabric/Power BI Premium

指定したオブジェクトと、指定されたすべての子孫オブジェクトを作成します。 オブジェクトが既に存在する場合、コマンドはエラーを発生させます。

要求

要求の構造は、 オブジェクトによって異なります。 兄弟と親の完全なオブジェクト定義は必要ありませんが、親であるオブジェクトにはすべての子を含める必要があります。

Database オブジェクト (TMSL) サーバーにデータベースを追加します。

{   
  "create": {   
    "database": {   
      "name": "AdventureworksDW2016",   
      "description": "<description>"   
    }   
  }   
}  

DataSources オブジェクト (TMSL)

{  
  "create": {  
    "parentObject": {  
      "database": "AdventureworksDW2016"  
    },  
    "dataSource": {  
      "name": "SqlServer localhost AdventureworksDW2016",  
      "connectionString": "Provider=SQLNCLI11;Data Source=localhost;Initial Catalog=AdventureworksDW2016;Integrated Security=SSPI;Persist Security Info=false",  
      "impersonationMode": "impersonateAccount",  
      "account": "<account name>",  
      "annotations": [  
        {  
          "name": "ConnectionEditUISource",  
          "value": "SqlServer"  
        }  
      ]  
    }  
  }  
}  

Partitions オブジェクト (TMSL) 親テーブル オブジェクトにパーティションを追加します。

{  
  "create": {  
    "parentObject": {  
      "database": "AdventureWorksTabular1200",  
      "table": "Date"  
    },  
    "partition": {  
      "name": "Date 2",  
      "source": {  
        "query": "SELECT [dbo].[DimDate].* FROM [dbo].[DimDate]",  
        "dataSource": "SqlServer localhost AdventureworksDW2016"  
      }  
    }  
  }  
}  

Roles オブジェクト (TMSL) 最小限の方法でロールをデータベースに追加しますが、メンバーシップやフィルターはありません。

{  
  "create": {  
    "parentObject": {  
      "database": "AdventureWorksDW2016"  
    },  
    "role": {  
      "name": "DataReader",  
      "modelPermission": "read"  
    }  
  }  
}  

Database オブジェクトを除き、作成されるオブジェクトは指定された parentObject の子です。 Database オブジェクトの親は常に Server オブジェクトです。

サーバーはコンテキストから想定されます。 たとえば、Management Studio または AMO PowerShell からスクリプトを実行した場合、サーバー接続はセッションまたはパラメーターとして指定されます。

Response

コマンドが成功したときに空の結果を返します。 それ以外の場合は、XMLA 例外が返されます。

例 1 - メンバーシップとフィルターを指定するロールを追加します。

{   
   "create":{   
      "parentObject":{   
         "database":"AdventureWorksTabular1200"  
      },  
      "role":{  
         "name":"DataReader",  
         "modelPermission":"read",  
         "members":[   
            {  
               "memberName": "account-01",  
               "memberId":"S-1-5-21-1111111111-2222222222-33333333-444444"  
            },  
            {   
               "memberName": "account-02",  
               "memberId":"S-2-5-21-1111111111-2222222222-33333333-444444"  
            }  
         ],  
         "tablePermissions":[   
            {   
               "name":"Date",  
               "filterExpression":"CalendarYear('2011')"  
            }  
         ]  
      }  
   }  
}  

使用法 (エンドポイント)

このコマンド要素は、次の方法で公開されている XMLA エンドポイントに対する Execute メソッド (XMLA) 呼び出しのステートメントで使用されます。

  • SQL Server Management Studio (SSMS) の XMLA ウィンドウとして

  • invoke-ascmd PowerShell コマンドレットへの入力ファイルとして

  • SSIS タスクまたはSQL Server エージェント ジョブへの入力として

SSMS からこのコマンド用の既製のスクリプトを生成できます。 たとえば、既存のデータベーススクリプトスクリプト データベース>>を CREATETo として>右クリックできます。