Niveau de compatibilité d’une base de données multidimensionnelle (Analysis Services)Compatibility Level of a Multidimensional Database (Analysis Services)

S’APPLIQUE À :ouiSQL Server Analysis ServicesnonAzure Analysis ServicesAPPLIES TO:yesSQL Server Analysis ServicesnoAzure Analysis ServicesDans Analysis ServicesAnalysis Services, la propriété de niveau de compatibilité de base de données détermine le niveau fonctionnel d’une base de données. In Analysis ServicesAnalysis Services, the database compatibility level property determines the functional level of a database. Les niveaux de compatibilité sont propres à chaque type de modèle.Compatibility levels are unique to each model type. Par exemple, un niveau de compatibilité de 1 100 a une signification différente selon que la base de données est multidimensionnelle ou tabulaire.For example, a compatibility level of 1100 has a different meaning depending on whether the database is multidimensional or tabular.

Cette rubrique décrit le niveau de compatibilité des bases de données multidimensionnelles uniquement.This topic describes compatibility level for multidimensional databases only. Pour plus d’informations sur les solutions tabulaires, consultez Niveau de compatibilité pour les modèles tabulaires dans Analysis Services.For more information about tabular solutions, see Compatibility Level for Tabular models in Analysis Services.

Note

Les modèles tabulaires possèdent des niveaux de compatibilité de base de données qui ne s'appliquent pas aux modèles multidimensionnels.Tabular models have additional database compatibility levels that are not applicable to multidimensional models. Le niveau de compatibilité 1103 n'existe pas pour les modèles multidimensionnels.Compatibility level 1103 does not exist for multidimensional models. Consultez What is new for the Tabular model in SQL Server 2012 SP1 and compatibility level (Nouveautés concernant le modèle tabulaire dans SQL Server 2012 SP1 et le niveau de compatibilité) pour plus d’informations sur 1103 pour les solutions tabulaires.See What is new for the Tabular model in SQL Server 2012 SP1 and compatibility level for more information about 1103 for tabular solutions.

Niveaux de compatibilité des bases de données multidimensionnellesCompatibility Levels for multidimensional databases

Actuellement, le seul comportement de base de données multidimensionnelle qui varie selon le niveau de compatibilité est l'architecture de stockage de chaînes.Currently, the only multidimensional database behavior that varies by functional level is string storage architecture. En augmentant le niveau de compatibilité d'une base de données, vous pouvez dépasser la limite de 4 Go pour le stockage de chaînes de mesures et de dimensions.By raising the database compatibility level, you can override the 4 gigabyte maximum limit for string storage of measures and dimensions.

Pour une base de données multidimensionnelle, les valeurs valides pour la propriété CompatibilityLevel sont les suivantes :For a multidimensional database, valid values for the CompatibilityLevel property include the following:

ParamètreSetting DescriptionDescription
10501050 Cette valeur n'est pas visible dans un script ou des outils, mais elle correspond aux bases de données créées dans SQL Server 2005SQL Server 2005, SQL Server 2008SQL Server 2008ou SQL Server 2008 R2SQL Server 2008 R2.This value is not visible in script or tools, but it corresponds to databases created in SQL Server 2005SQL Server 2005, SQL Server 2008SQL Server 2008, or SQL Server 2008 R2SQL Server 2008 R2. Toute base de données pour laquelle CompatibilityLevel n'est pas défini explicitement, s'exécute implicitement au niveau 1050 .Any database that does not have CompatibilityLevel explicitly set is implicitly running at the 1050 level.
1 1001100 C'est la valeur par défaut pour les nouvelles bases de données que vous créez dans SQL Server 2012SQL Server 2012 ou SQL Server 2017SQL Server 2017.This is the default value for new databases that you create in SQL Server 2012SQL Server 2012 or SQL Server 2017SQL Server 2017. Vous pouvez également la spécifier pour les bases de données créées dans les versions antérieures de Analysis ServicesAnalysis Services pour permettre l'utilisation des fonctionnalités prises en charge uniquement à ce niveau de compatibilité (à savoir, le stockage amélioré des chaînes pour les attributs de dimension ou les mesures de comptage des valeurs qui contiennent les données de chaîne).You can also specify it for databases created in earlier versions of Analysis ServicesAnalysis Services to enable the use of features that are supported only at this compatibility level (namely, increased string storage for dimension attributes or distinct count measures that contain string data).

Les bases de données dont la valeur CompatibilityLevel est définie sur 1 100 comportent une propriété supplémentaire, StringStoresCompatibilityLevel, qui vous permet de choisir un autre stockage de chaînes pour les partitions et les dimensions.Databases that have a CompatibilityLevel set to 1100 get an additional property, StringStoresCompatibilityLevel, that lets you choose alternative string storage for partitions and dimensions.

Avertissement

La définition de la compatibilité de la base de données sur un niveau supérieur est irrévocable.Setting the database compatibility to a higher level is irreversible. Après avoir augmenté le niveau de compatibilité à 1 100, vous devez continuer à exécuter la base de données sur des serveurs plus récents.After you increase the compatibility level to 1100, you must continue to run the database on newer servers. Vous ne pouvez pas revenir au niveau 1 050.You cannot rollback to 1050. Vous ne pouvez pas attacher ni restaurer une base de données 1 100 sur une version de serveur antérieure à SQL Server 2012SQL Server 2012 ou SQL Server 2017SQL Server 2017.You cannot attach or restore an 1100 database on a server version that is earlier than SQL Server 2012SQL Server 2012 or SQL Server 2017SQL Server 2017.

PrerequisitesPrerequisites

Les niveaux de compatibilité de la base de données ont été introduits dans SQL Server 2012SQL Server 2012.Database compatibility levels are introduced in SQL Server 2012SQL Server 2012. Vous devez disposer de SQL Server 2012SQL Server 2012 Analysis ServicesAnalysis Services ou ultérieur pour visualiser ou définir le niveau de compatibilité de la base de données.You must have SQL Server 2012SQL Server 2012 Analysis ServicesAnalysis Services or higher to view or set the database compatibility level.

La base de données ne peut pas être un cube local.The database cannot be a local cube. Les cubes locaux ne prennent pas en charge la propriété CompatibilityLevel .Local cubes do not support the CompatibilityLevel property.

La base de données doit avoir été créée dans une version précédente (SQL Server 2008 R2 ou antérieure), puis attachée ou restaurée sur un serveur SQL Server 2012SQL Server 2012 Analysis ServicesAnalysis Services ou plus récent.The database must have been created in a previous release (SQL Server 2008 R2 or earlier) and then attached or restored to a SQL Server 2012SQL Server 2012 Analysis ServicesAnalysis Services or higher server. Les bases de données déployées vers SQL Server 2012 sont déjà au niveau 1100 et ne peuvent pas être déclassifiées pour s'exécuter à un niveau inférieur.Databases deployed to SQL Server 2012 are already at 1100 and cannot be downgraded to run at a lower level.

Déterminer le niveau de compatibilité de la base de données existant pour une base de données multidimensionnelleDetermine the existing database compatibility level for a multidimensional database

La seule façon d'afficher ou modifier le niveau de compatibilité de la base de données est de passer par XMLA.The only way to view or modify the database compatibility level is through XMLA. Vous pouvez afficher ou modifier le script XMLA qui spécifie la base de données dans SQL Server Management Studio.You can view or modify the XMLA script that specifies your database in SQL Server Management Studio.

Si vous recherchez la définition XMLA d'une base de données pour la propriété CompatibilityLevel et qu'elle 'existe pas, vous disposez probablement d'une base de données au niveau de compatibilité 1050 .If you search the XMLA definition of a database for the property CompatibilityLevel and it does not exist, you most likely have a database at the 1050 level.

Vous trouverez des instructions pour l'affichage et la modification du script XMLA dans la section suivante.Instructions for viewing and modifying the XMLA script are provided in the next section.

Définir le niveau de compatibilité de la base de données dans SQL Server Management StudioSet the database compatibility level in SQL Server Management Studio

  1. Avant d'augmenter le niveau de compatibilité, sauvegardez la base de données au cas où vous souhaiteriez annuler les modifications apportées.Before raising the compatibility level, backup the database in case you want to reverse your changes later.

  2. Connectez-vous au serveur SQL Server 2017SQL Server 2017 Analysis ServicesAnalysis Services qui héberge la base de données à l’aide de SQL Server Management Studio.Using SQL Server Management Studio, connect to the SQL Server 2017SQL Server 2017 Analysis ServicesAnalysis Services server that hosts the database.

  3. Cliquez avec le bouton droit sur le nom de la base de données, pointez sur Générer un script de la base de données en tant que, sur ALTER To, puis sélectionnez Nouvelle fenêtre d’éditeur de requête.Right-click the database name, point to Script Database as, point to ALTER to, and then select New Query Editor Window. Une représentation XMLA de la base de données s'ouvre dans une nouvelle fenêtre.An XMLA representation of the database will open in a new window.

  4. Copiez l'élément XML suivant :Copy the following XML element:

    <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>  
    
  5. Collez-le après l'élément de fin </Annotations> et avant l'élément <Language> .Paste it after the </Annotations> closing element and before the <Language> element. Le XML doit ressembler à l'exemple suivant :The XML should look similar to the following example:

    </Annotations>  
    <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>  
    <Language>1033</Language>  
    
  6. Enregistrez le fichier.Save the file.

  7. Pour exécuter le script, cliquez sur Exécuter dans le menu Requête ou appuyez sur F5.To run the script, click Execute on the Query menu or press F5.

Opérations prises en charge qui requièrent le même niveau de compatibilitéSupported Operations that Require the Same Compatibility Level

Les opérations suivantes requièrent que les bases de données sources partagent le même niveau de compatibilité.The following operations require that the source databases share the same compatibility level.

  1. La fusion de partitions de bases de données différentes est prise en charge uniquement si les deux bases de données partagent le même niveau de compatibilité.Merging partitions from different databases is supported only if both databases share the same compatibility level.

  2. L'utilisation de dimensions liées d'une autre base de données requiert le même niveau de compatibilité.Using linked dimensions from another database requires the same compatibility level. Par exemple, si vous souhaitez utiliser une dimension liée d’une base de données SQL Server 2008 R2SQL Server 2008 R2 dans une base de données SQL Server 2012SQL Server 2012 , vous devez déplacer la base de données SQL Server 2008 R2SQL Server 2008 R2 sur un serveur SQL Server 2012SQL Server 2012 et définir le niveau de compatibilité sur 1 100.For example, if you want to use a linked dimension from a SQL Server 2008 R2SQL Server 2008 R2 database in a SQL Server 2012SQL Server 2012 database, you must port the SQL Server 2008 R2SQL Server 2008 R2 database to a SQL Server 2012SQL Server 2012 server and set the compatibility level to 1100.

  3. La synchronisation des serveurs est prise en charge uniquement pour les serveurs qui partagent la même version et le même niveau de compatibilité de base de données.Synchronizing servers is only supported for servers that share the same version and database compatibility level.

Next StepsNext Steps

Après avoir augmenté le niveau de compatibilité de la base de données, vous pouvez définir la propriété StringStoresCompatibilityLevel dans Outils de données SQL ServerSQL Server Data Tools.After you increase the database compatibility level, you can set the StringStoresCompatibilityLevel property in Outils de données SQL ServerSQL Server Data Tools. Cela augmente le stockage des chaînes de mesures et de dimensions.This increases string storage for measures and dimensions. Pour plus d’informations sur cette fonctionnalité, consultez Configurer le stockage de chaînes pour des dimensions et des partitions.For more information about this feature, see Configure String Storage for Dimensions and Partitions.

Voir aussiSee Also

Sauvegarde, restauration et synchronisation de bases de données (XMLA)Backing Up, Restoring, and Synchronizing Databases (XMLA)