Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les objets principaux peuvent être créés, modifiés et supprimés indépendamment. Les objets principaux incluent les objets suivants :
Serveurs
Bases de données
Taille
Cubes
Groupes de mesures
Cloisons
Perspectives
Modèles d’exploration de données
Rôles
Commandes associées à un serveur ou une base de données
Sources de données
Vous utilisez la commande Create pour créer un objet principal sur une instance de Microsoft SQL Server Analysis Services et la commande Alter pour modifier un objet principal existant sur une instance. Les deux commandes sont exécutées à l’aide de la méthode Execute .
Création d’objets
Lorsque vous créez des objets à l’aide de la Create méthode, vous devez d’abord identifier l’objet parent qui contient l’objet Analysis Services à créer. Vous identifiez l’objet parent en fournissant une référence d’objet dans la propriété ParentObject de la Create commande. Chaque référence d’objet contient les identificateurs d’objet nécessaires pour identifier de manière unique l’objet parent de la Create commande. Pour plus d’informations sur les références d’objets, consultez Définition et identification d’objets (XMLA).
Par exemple, vous devez fournir une référence d’objet à un cube pour créer un groupe de mesures pour le cube. La référence d’objet du cube dans la propriété contient à la ParentObject fois un identificateur de base de données et un identificateur de cube, car le même identificateur de cube peut potentiellement être utilisé sur une autre base de données.
L’élément ObjectDefinition contient des éléments ASSL (Analysis Services Scripting Language) qui définissent l’objet principal à créer. Pour plus d’informations sur ASSL, consultez Développement avec Analysis Services Scripting Language (ASSL).
Si vous définissez l’attribut AllowOverwrite de la Create commande sur true, vous pouvez remplacer un objet principal existant qui a l’identificateur spécifié. Sinon, une erreur se produit si un objet majeur qui a l’identificateur spécifié existe déjà dans l’objet parent.
Pour plus d’informations sur la Create commande, consultez Create Element (XMLA).
Création d’objets de session
Les objets de session sont des objets temporaires disponibles uniquement pour la session explicite ou implicite utilisée par une application cliente et sont supprimés lorsque la session est terminée. Vous pouvez créer des objets de session en définissant l’attribut Scope de la Create commande sur Session.
Remarque
Lorsque vous utilisez le paramètre Session , l’élément ObjectDefinition ne peut contenir que des éléments ASSL Dimension, Cube ou MiningModel .
Modification d’objets
Lors de la modification d’objets à l’aide de la Alter méthode, vous devez d’abord identifier l’objet à modifier en fournissant une référence d’objet dans la propriété Object de la Alter commande. Chaque référence d’objet contient les identificateurs d’objet nécessaires pour identifier de manière unique l’objet de la Alter commande. Pour plus d’informations sur les références d’objets, consultez Définition et identification d’objets (XMLA).
Par exemple, vous devez fournir une référence d’objet à un cube afin de modifier la structure d’un cube. La référence d’objet du cube dans la propriété contient à la Object fois un identificateur de base de données et un identificateur de cube, car le même identificateur de cube peut potentiellement être utilisé sur une autre base de données.
L’élément ObjectDefinition contient des éléments ASSL qui définissent l’objet principal à modifier. Pour plus d’informations sur ASSL, consultez Développement avec Analysis Services Scripting Language (ASSL).
Si vous définissez l’attribut AllowCreate de la Alter commande sur true, vous pouvez créer l’objet principal spécifié si l’objet n’existe pas. Sinon, une erreur se produit si un objet principal spécifié n’existe pas déjà.
Utilisation de l’attribut ObjectExpansion
Si vous modifiez uniquement les propriétés de l’objet principal et que vous ne redéfinissez pas les objets mineurs contenus par l’objet principal, vous pouvez définir l’attribut ObjectExpansion de la Alter commande sur ObjectProperties. La ObjectDefinition propriété doit ensuite contenir uniquement les éléments des propriétés de l’objet principal, et la Alter commande laisse des objets mineurs associés à l’objet principal non touché.
Pour redéfinir les objets mineurs d’un objet principal, vous devez définir l’attribut ObjectExpansionsur ExpandFull et la définition de l’objet doit inclure tous les objets mineurs contenus par l’objet principal. Si la ObjectDefinition propriété de la Alter commande n’inclut pas explicitement un objet mineur contenu par l’objet principal, l’objet mineur qui n’a pas été inclus est supprimé.
Modification d’objets de session
Pour modifier les objets de session créés par la Create commande, définissez l’attribut Scope de la Alter commande sur Session.
Remarque
Lorsque vous utilisez le paramètre Session , l’élément ObjectDefinition ne peut contenir que des éléments ASSL Dimension, Cube ou MiningModel .
Création ou modification d’objets subordonnés
Bien qu’une Create ou Alter une commande crée ou modifie un seul objet principal le plus important, l’objet principal en cours de création ou modifié peut contenir des définitions dans la propriété englobante ObjectDefinition pour d’autres objets majeurs et mineurs qui sont subordonnés à celui-ci. Par exemple, si vous définissez un cube, vous spécifiez la base de données parente ParentObjectdans , et dans la définition de cube dans ObjectDefinition vous pouvez définir des groupes de mesures pour le cube, et dans les groupes de mesures, vous pouvez définir des partitions pour chaque groupe de mesures. Un objet mineur ne peut être défini que sous l’objet principal qui le contient. Pour plus d’informations sur les objets majeurs et secondaires, consultez Objets de base de données (Analysis Services - Données multidimensionnelles).
Exemples
Descriptif
L’exemple suivant crée une source de données relationnelle qui fait référence à l’exemple de base de données Microsoft SQL Server Adventure Works DW Multidimensional 2012.
Code
<Create xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">
<ParentObject>
<DatabaseID>Adventure Works DW Multidimensional 2012</DatabaseID>
</ParentObject>
<ObjectDefinition>
<DataSource xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="RelationalDataSource">
<ID>AdventureWorksDW2012</ID>
<Name>AdventureWorksDW2012</Name>
<ConnectionString>Data Source=localhost;Initial Catalog=AdventureWorksDW2008R2;Integrated Security=True</ConnectionString>
<ImpersonationInfo>
<ImpersonationMode>ImpersonateServiceAccount</ImpersonationMode>
</ImpersonationInfo>
<ManagedProvider>System.Data.SqlClient</ManagedProvider>
<Timeout>PT0S</Timeout>
</DataSource>
</ObjectDefinition>
</Create>
Descriptif
L’exemple suivant modifie la source de données relationnelle créée dans l’exemple précédent pour définir le délai d’expiration de la requête pour la source de données sur 30 secondes.
Code
<Alter ObjectExpansion="ObjectProperties" xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">
<Object>
<DatabaseID>Adventure Works DW Multidimensional 2012</DatabaseID>
<DataSourceID>AdventureWorksDW2012</DataSourceID>
</Object>
<ObjectDefinition>
<DataSource xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="RelationalDataSource">
<ID>AdventureWorksDW2012</ID>
<Name>AdventureWorksDW2012</Name>
<ConnectionString>Data Source=fr-dwk-02;Initial Catalog=AdventureWorksDW2008R2;Integrated Security=True</ConnectionString>
<ManagedProvider>System.Data.SqlClient</ManagedProvider>
<Timeout>PT30S</Timeout>
</DataSource>
</ObjectDefinition>
</Alter>
Commentaires
L’attribut ObjectExpansion de la Alter commande a été défini sur ObjectProperties. Ce paramètre permet à l’élément ImpersonationInfo , un objet mineur, d’être exclu de la source de données définie dans ObjectDefinition. Par conséquent, les informations d’emprunt d’identité pour cette source de données restent définies sur le compte de service, comme spécifié dans le premier exemple.
Voir aussi
Execute, méthode (XMLA)
Développement avec Analysis Services Scripting Language (ASSL)
Développement avec XMLA dans Analysis Services