Share via


Create 命令 (TMSL)

適用于:SQL Server 2016 和更新版本的 Analysis Services Azure Analysis Services Fabric/Power BI Premium

建立指定的 物件和指定的所有子系物件。 如果物件已經存在,命令就會引發錯誤。

要求

要求的結構會根據 物件而有所不同。 父系的物件必須包含其所有子系,不過不需要同層級和父系 () 的完整物件定義。

資料庫物件 (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"  
        }  
      ]  
    }  
  }  
}  

TMSL) (Partitions 物件 將分割區新增至父資料表物件。

{  
  "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 執行腳本,則會在會話或參數中指定伺服器連線。

回應

當命令成功時,傳回空的結果。 否則會傳回 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) 呼叫的語句中,以下列方式公開:

  • 作為 SSMS SQL Server Management Studio () 中的 XMLA 視窗

  • 作為 invoke-ascmd PowerShell Cmdlet 的輸入檔

  • 作為 SSIS 工作或SQL Server Agent作業的輸入

您可以從 SSMS 為此命令產生現成的腳本。 例如,您可以以滑鼠右鍵按一下現有的資料庫 >腳本腳本>資料庫作為>CREATE To