Create, commande (TMSL)

S’applique à : SQL Server 2016 et versions ultérieures Analysis Services Azure Analysis Services Fabric/Power BI Premium

Crée l’objet spécifié et tous les objets descendants spécifiés. Si l’objet existe déjà, la commande génère une erreur.

Requête

La structure de la requête varie en fonction de l’objet . Un objet qui est un parent doit inclure tous ses enfants, bien que les définitions d’objet complètes des frères et des parents ne soient pas obligatoires.

Objet de base de données (TMSL) Ajouter une base de données à un serveur.

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

DataSources, objet (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"  
        }  
      ]  
    }  
  }  
}  

Objet Partitions (TMSL) Ajoutez une partition à un objet table parent.

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

Objet Roles (TMSL) Ajoutez au minimum un rôle à une base de données, mais sans appartenance ni filtres.

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

À l’exception de l’objet Database , l’objet en cours de création est l’enfant d’un parentObject spécifié. Le parent de l’objet Database est toujours l’objet Server .

Le serveur est supposé à partir du contexte. Par exemple, si vous exécutez le script à partir de Management Studio ou D’AMO PowerShell, la connexion au serveur est spécifiée dans la session ou en tant que paramètre.

response

Retourne un résultat vide lorsque la commande réussit. Sinon, une exception XMLA est retournée.

Exemples

Exemple 1 - Ajouter un rôle qui spécifie l’appartenance et un filtre.

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

Utilisation (points de terminaison)

Cet élément de commande est utilisé dans une instruction de l’appel execute method (XMLA) sur un point de terminaison XMLA, exposé des manières suivantes :

  • En tant que fenêtre XMLA dans SQL Server Management Studio (SSMS)

  • En tant que fichier d’entrée de l’applet de commande PowerShell invoke-ascmd

  • En tant qu’entrée dans une tâche SSIS ou SQL Server Agent travail

Vous pouvez générer un script prêt pour cette commande à partir de SSMS. Par exemple, vous pouvez cliquer avec le bouton droit sur une base de données existante script>de base de données> comme >CREATE To.