Create-Befehl (TMSL)

Gilt für: SQL Server 2016 und höher Analysis Services Azure Analysis Services Power BI Premium

Erstellt das angegebene -Objekt und alle angegebenen Nachfolgerobjekte. Wenn das Objekt bereits vorhanden ist, löst der Befehl einen Fehler aus.

Anforderung

Die Struktur der Anforderung variiert je nach Objekt. Ein Objekt, das ein übergeordnetes Element ist, muss alle untergeordneten Elemente enthalten, obwohl die vollständigen Objektdefinitionen gleichgeordneter und übergeordneter Elemente nicht erforderlich sind.

Datenbankobjekt (TMSL) Fügen Sie einem Server eine Datenbank hinzu.

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

DataSources-Objekt (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-Objekt (TMSL) Fügen Sie einem übergeordneten Tabellenobjekt eine Partition hinzu.

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

Roles-Objekt (TMSL) Fügen Sie einer Datenbank minimal eine Rolle hinzu, jedoch ohne Mitgliedschaft oder Filter.

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

Mit Ausnahme des Database-Objekts ist das objekt, das erstellt wird, untergeordnetes Element eines angegebenen parentObject. Das übergeordnete Element des Database-Objekts ist immer das Server-Objekt .

Der Server wird aus dem Kontext angenommen. Wenn Sie das Skript beispielsweise über Management Studio oder AMO PowerShell ausführen, wird die Serververbindung in der Sitzung oder als Parameter angegeben.

Antwort

Gibt ein leeres Ergebnis zurück, wenn der Befehl erfolgreich ausgeführt wird. Andernfalls wird eine XMLA-Ausnahme zurückgegeben.

Beispiele

Beispiel 1 : Hinzufügen einer Rolle, die die Mitgliedschaft und einen Filter angibt.

{   
   "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')"  
            }  
         ]  
      }  
   }  
}  

Verwendung (Endpunkte)

Dieses Befehlselement wird in einer Anweisung des XMLA-Aufrufs (Execute Method) über einen XMLA-Endpunkt verwendet, der auf folgende Weise verfügbar gemacht wird:

  • Als XMLA-Fenster in SQL Server Management Studio (SSMS)

  • Als Eingabedatei für das PowerShell-Cmdlet invoke-ascmd

  • Als Eingabe für einen SSIS-Task oder SQL Server-Agent Auftrag

Sie können ein vorgefertigtes Skript für diesen Befehl aus SSMS generieren. Beispielsweise können Sie mit der rechten Maustaste auf eine vorhandene Datenbank >scriptScript>DatabaseasCREATE> To klicken.