Notes de publication de SQL Server 2014

Ce document Notes de publication décrit les problèmes connus que vous devez examiner avant d'installer ou de dépanner SQL Server 2014.

Sommaire

1.0 Avant l'installation

2.0 Documentation du produit

3.0 Moteur de base de données

4.0 Reporting Services

5.0 SQL Server 2014 sur des machines virtuelles Windows Azure

6.0 Analysis Services

7.0 Data Quality Services

8.0 Conseiller de mise à niveau

1.0 Avant l'installation

1.1 Limitations et restrictions dans SQL Server 2014 RTM

1.1.1 Limitations et restrictions générales

  1. La mise à niveau de SQL Server 2014 CTP 1 vers SQL Server 2014 RTM N'est PAS prise en charge.

  2. L'installation de SQL Server 2014 CTP 1 côte à côte avec SQL Server 2014 RTM N'est PAS prise en charge.

  3. L'attachement ou la restauration d'une base de données SQL Server 2014 CTP 1 vers SQL Server 2014 RTM N'est PAS prise en charge.

Solution de contournement : aucune

1.2.1 La mise à niveau de SQL Server 2014 CTP 2 vers SQL Server RTM est totalement prise en charge.

Plus précisément, vous pouvez :

  1. Attacher une base de données SQL Server 2014 CTP 2 à une instance de SQL Server 2014 RTM.

  2. Restaurer une sauvegarde de base de données prise sur SQL Server 2014 CTP 2 sur une instance de SQL Server 2014 RTM.

  3. Mettre à niveau sur place vers SQL Server 2014 RTM.

  4. Mettre à niveau de façon propagée vers SQL Server 2014 RTM. Vous devez passer en mode de basculement manuel avant d'initialiser la mise à niveau propagée. Reportez-vous à Mise à niveau et mise à jour des serveurs d'un groupe de disponibilité avec un temps mort et une perte de données minimaux pour plus de détails.

  5. Les données collectées par les jeux d'éléments de collecte des performances des transactions installés dans SQL Server 2014 CTP 2 ne peuvent pas être affichées par SQL Server Management Studio dans SQL Server 2014 RTM, et vice versa. Utilisez SQL Server Management Studio dans SQL Server 2014 CTP 2 pour afficher les données collectées par le jeu d'éléments de collecte installé dans SQL Server 2014 CTP 2, et utilisez SQL Server Management Studio dans SQL Server 2014 RTM pour afficher les données collectées par le jeu d'éléments de collecte installé dans SQL Server 2014 RTM.

1.2.2 Migration de SQL Server 2014 RTM vers SQL Server 2014 CTP 2

Cela n'est pas pris en charge.

Solution de contournement : il n'existe pas de solution pour la migration vers une version antérieure. Nous vous recommandons de sauvegarder la base de données avant la mise à niveau vers SQL Server 2014 RTM.

Icône de flèche utilisée avec le lien Retour en haut Haut

2.0 Documentation du produit

2.1 Le contenu du Générateur de rapports n'est pas disponible dans toutes les langues

Problème : le contenu du Générateur de rapports est disponible uniquement dans les langues suivantes :

  • Grec (el-GR)

  • Norvégien (Bokmal) (nb-NO)

  • Finnois (fi Fi)

  • Danois (da-DK)

Dans SQL Server 2012, ce contenu était disponible dans un fichier CHM fourni avec le produit et disponible dans ces langues. Les fichiers CHM ne sont plus fournis avec le produit et le contenu du Générateur de rapports est uniquement disponible sur MSDN. MSDN ne prend pas en charge ces langues. Le Générateur de rapports a également été supprimé de TechNet, et n'est donc plus disponible dans les langues prises en charge.

Solution de contournement : aucune

2.2 Le contenu PowerPivot n'est pas disponible dans toutes les langues

Problème : le contenu Power Pivot n'est pas disponible dans les langues suivantes :

  • Grec (el-GR)

  • Norvégien (Bokmal) (nb-NO)

  • Finnois (fi Fi)

  • Danois (da-DK)

  • Tchèque (cs-CZ)

  • Hongrois (hu-HU)

  • Néerlandais (Pays-Bas) (nl-NL)

  • Polonais (pl-PL)

  • Suédois (sv-SE)

  • Turc (tr-TR)

  • Portugais (Portugal) (pt-PT)

Dans SQL Server 2012, ce contenu était disponible sur TechNet et dans ces langues. Ce contenu a été supprimé de TechNet, et n'est plus disponible dans les langues prises en charge.

Solution de contournement : aucune

Icône de flèche utilisée avec le lien Retour en haut Haut

3.0 Moteur de base de données

3.1 Modifications apportées à l'édition Standard dans SQL Server 2014 RTM

L'édition SQL Server 2014 Standard comprend les modifications suivantes :

  • La fonctionnalité d'extension du pool de mémoires tampons autorise l'utilisation d'une taille maximale allant jusqu'à 4 fois la mémoire configurée.

  • La mémoire maximale est passée de 64 Go à 128 Go.

3.2 Problèmes liés à OLTP en mémoire

3.2.1 Le Conseiller d'optimisation de la mémoire signale les contraintes par défaut comme incompatibles

Problème : le Conseiller d'optimisation de la mémoire dans SQL Server Management Studio signale toutes les contraintes par défaut comme étant incompatibles. Certaines contraintes par défaut ne sont pas prises en charge dans une table mémoire optimisée ; le Conseiller ne fait pas de distinction entre les types de contraintes par défaut prises en charge et non prises en charge. Les contraintes par défaut prises en charge incluent notamment toutes les constantes, les expressions et les fonctions intégrées prises en charge dans les procédures stockées compilées en mode natif. Pour afficher la liste des fonctions prises en charge dans les procédures stockées compilées en mode natif, consultez Constructions prises en charge dans les procédures stockées compilées en mode natif.

Solution de contournement : si vous voulez utiliser le Conseiller pour identifier les bloqueurs, ignorez les contraintes par défaut compatibles. Pour utiliser le Conseiller d'optimisation de la mémoire pour migrer des tables ayant des contraintes par défaut compatibles, mais aucun autre bloqueur, suivez ces étapes :

  1. Supprimez les contraintes par défaut de la définition de table.

  2. Utilisez le Conseiller pour obtenir un script de migration sur la table.

  3. Rajoutez les contraintes par défaut dans le script de migration.

  4. Exécutez le script de migration.

3.2.2 Le message d'information « accès au fichier refusé » est signalé comme erreur dans le journal des erreurs SQL Server 2014

Problème : lors du redémarrage d'un serveur qui a des bases de données contenant des tables mémoire optimisées, vous pouvez voir le type de message d'erreur suivant dans le journal des erreurs SQL Server 2014 :

[ERROR]Unable to delete file C:\Program Files\Microsoft SQL 
Server\....old.dll. This error may be due to a previous failure to unload 
memory-optimized table DLLs.

Ce message est en fait fourni uniquement à titre d'information. Aucune action n'est requise de la part de l'utilisateur.

Solution de contournement : aucune Ce message est fourni à titre d'information.

3.2.3 Les détails d'index absent signalent incorrectement des colonnes incluses pour la table mémoire optimisée

Problème : si SQL Server 2014 détecte un index absent pour une requête sur une table mémoire optimisée, il signalera un index absent dans SHOWPLAN_XML, ainsi que dans les vues de gestion dynamique de l'index absent, par exemple sys.dm_db_missing_index_details. Dans certains cas, les détails de l'index absent contiendront des colonnes incluses. Bien que toutes les colonnes soient implicitement incluses avec tous les index des tables mémoire optimisées, il n'est pas possible de spécifier explicitement les colonnes incluses avec des index mémoire optimisés.

Solution de contournement : ne spécifiez pas la clause INCLUDE pour des index de tables mémoire optimisées.

3.2.4 Les détails d'index absent omettent les index absents si un index hach existe mais n'est pas approprié pour la requête

Problème : si un index HASH sur les colonnes d'une table mémoire optimisée est référencé dans une requête, mais l'index ne peut pas être utilisé pour la requête, SQL Server 2014 ne signale pas toujours d'index absent dans SHOWPLAN_XML et dans la vue de gestion dynamique sys.dm_db_missing_index_details.

Notamment, si une requête contient des prédicats d'égalité qui impliquent un sous-ensemble de colonnes clés d'index ou si elle contient des prédicats d'inégalité qui impliquent des colonnes clés d'index, l'index HASH ne peut pas être utilisé tel quel, et un autre index est requis pour exécuter la requête efficacement.

Solution de contournement : si vous utilisez des index hach, inspectez les requêtes et les plans de requête pour déterminer si les requêtes peuvent tirer parti des opérations de recherche d'index sur un sous-ensemble de la clé d'index, ou des opérations de recherche d'index sur les prédicats d'inégalité. Si vous devez effectuer une recherche sur un sous-ensemble de la clé d'index, utilisez un index NONCLUSTERED, ou un index HASH uniquement sur les colonnes qui font l'objet de votre recherche. Si vous devez effectuer une recherche sur un prédicat d'inégalité, utilisez un index NONCLUSTERED au lieu d'un index HASH.

3.2.5 Échec lors de l'utilisation d'une table mémoire optimisée et d'une variable de table mémoire optimisée dans la même requête, si l'option de base de données READ_COMMITTED_SNAPSHOT a la valeur ON

Problème : si l'option de base de données READ_COMMITTED_SNAPSHOT a la valeur ON, et vous accédez à une table mémoire optimisée et à une variable de table mémoire optimisée dans la même instruction en dehors du contexte d'une transaction utilisateur, vous pouvez obtenir ce message d'erreur :

Msg 41359
A query that accesses memory optimized tables using the READ COMMITTED
isolation level, cannot access disk based tables when the database option
READ_COMMITTED_SNAPSHOT is set to ON. Provide a supported isolation level
for the memory optimized table using a table hint, such as WITH (SNAPSHOT).

Solution de contournement : utilisez l'indicateur de table WITH (SNAPSHOT) avec la variable de table, ou définissez l'option de base de données MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT sur ON, à l'aide de l'instruction suivante :

ALTER DATABASE CURRENT 
SET MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT=ON

3.2.6 Les statistiques d'exécution des procédures et des requêtes pour les procédures stockées compilées en mode natif enregistrent le temps de travail par multiples de 1000

Problème : après l'activation de la collection de procédures ou de la collection de statistiques d'exécution de requête pour les procédures stockées compilées en mode natif avec sp_xtp_control_proc_exec_stats ou sp_xtp_control_query_exec_stats, vous verrez que le *_worker_time est indiqué par multiples de 1000, dans les vues de gestion dynamique sys.dm_exec_procedure_stats et sys.dm_exec_query_stats. Les exécutions de requête dont le temps de travail est inférieur à 500 microsecondes seront indiquées avec un worker_time de 0.

Solution de contournement : aucune Ne comptez pas sur le worker_time indiqué dans les vues de gestion dynamique des statistiques pour les requêtes à exécution courte dans les procédures stockées compilées en mode natif.

3.2.7 Erreur avec SHOWPLAN_XML pour les procédures stockées compilées en mode natif contenant des expressions longues

Problème : si une procédure stockée compilée en mode natif contient une expression longue, l'obtention du SHOWPLAN_XML pour la procédure, à l'aide de l'option T-SQL SHOWPLAN_XML SET ON ou de l'option « Afficher le plan d'exécution estimé » dans Management Studio, peut entraîner l'erreur suivante :

Msg 41322. MAT/PIT export/import encountered a failure for memory
optimized table or natively compiled stored procedure with object ID
278292051 in database ID 6. The error code was
0xc00cee81.

Solution de contournement : il n'existe deux solutions de contournement :

  1. Ajoutez des parenthèses à l'expression, comme dans l'exemple suivant :

    À la place de :

    SELECT @v0 + @v1 + @v2 + ... + @v199
    

    Écrivez :

    SELECT((@v0 + ... + @v49) + (@v50 + ... + @v99)) + ((@v100 + ... + @v149) + (@v150 + ... + @v199))
    
  2. Créez une seconde procédure avec une expression légèrement simplifiée, pour le plan d'exécution de requêtes. La forme générale du plan doit être identique. Par exemple, à la place de :

    SELECT @v0 +@v1 +@v2 +...+@v199
    

    Écrivez :

    SELECT @v0 +@v1
    

3.2.8 L'utilisation d'un paramètre ou d'une variable avec DATEPART et des fonctions liées dans une procédure stockée compilée en mode natif génère une erreur

Problème : en utilisant un paramètre ou une variable qui a un type de données de chaîne tel que (var)char ou n(var)char avec les fonctions intégrées DATEPART, DAY, MONTH, et YEAR dans une procédure stockée compilée en mode natif, vous verrez un message d'erreur indiquant que le datetimeoffset du type de données n'est pas pris en charge par les procédures stockées compilées en mode natif.

Solution de contournement : attribuez le paramètre ou la variable de chaîne à une nouvelle variable de type datetime2, puis utilisez cette variable dans la fonction DATEPART, DAY, MONTH, ou YEAR. Par exemple :

DECLARE @d datetime2 = @string
DATEPART(weekday, @d)

3.2.9 Le Conseiller de compilation native indique les clauses DELETE FROM de façon incorrecte

Problème : le Conseiller de compilation native indique les clauses DELETE FROM d'une procédure stockée comme étant incompatibles, ce qui est incorrect.

Solution de contournement : aucune

3.3 L'enregistrement via SSMS ajoute des métadonnées DAC avec des ID d'instance incompatibles

Problème : lors de l'enregistrement ou de la suppression d'un package d'application de la couche Données (.dacpac) via SQL Server Management Studio, les tables sysdac* ne sont pas mises à jour correctement pour permettre à un utilisateur d'interroger l'historique dacpac pour la base de données. L'instance_id pour sysdac_history_internal et le sysdac_instances_internal ne correspondent pas et ne permettent pas la jointure.

Solution de contournement : ce problème est résolu avec la redistribution du Feature Pack de l'Infrastructure d'application de couche Données.  Après l'application de la mise à jour, toutes les nouvelles entrées d'historique utiliseront la valeur listée pour l'instance_id dans la table sysdac_instances_internal.

Si vous recontrez déjà ce problème avec des valeurs d'instance_id incompatibles, la seule façon de corriger les valeurs incompatibles est de se connecter au serveur en tant qu'utilisateur avec des privilèges d'écriture sur la base de données MSDB et de mettre à jour les valeurs d'instance_id pour les rendre compatibles. Si plusieurs événements d'enregistrement et d'annulation d'enregistrement de la même base de données ont eu lieu, vous devrez peut-être observer la date et l'heure pour voir quels enregistrements correspondent aux valeurs d'instance_id actuelles.

  1. Connectez-vous au serveur dans SQL Server Management Studio avec une connexion qui possède des autorisations de mise à jour sur MSDB.

  2. Ouvrez une nouvelle requête utilisant la base de données MSDB.

  3. Exécutez cette requête pour voir toutes les instances dac actives. Recherchez l'instance que vous voulez corriger et notez l'instance_id :

    select * from sysdac_instances_internal

  4. Exécutez cette requête pour voir toutes les entrées d'historique :

    select * from sysdac_history_internal

  5. Identifiez les lignes qui doivent correspondre à l'instance que vous résolvez.

  6. Mettez à jour la valeur sysdac_history_internal.instance_id avec la valeur que vous avez notée à l'étape 3 (dans la table sysdac_instances_internal) :

    update sysdac_history_internal set instance_id = '<valeur de l'étape 3>' where <expression correspondant aux lignes vous voulez mettre à jour>

Icône de flèche utilisée avec le lien Retour en haut Haut

4.0 Reporting Services

4.1 Le serveur de rapports SQL Server 2012 Reporting Services en mode natif ne peut pas opérer côte à côte avec les composants SQL Server 2014 Reporting Services SharePoint

Problème : le service Windows Reporting Services en mode natif « SQL Server Reporting Services » (ReportingServicesService.exe) ne démarre pas s'il existe des composants SQL Server 2014Reporting Services SharePoint installés sur le même serveur.

Solution de contournement : désinstallez les composants SQL Server 2014 Reporting Services SharePoint et redémarrez le service Windows Microsoft SQL Server 2012 Reporting Services.

Informations complémentaires :

SQL Server 2012 Reporting Services en mode natif ne peut pas fonctionner côte à côte avec l'un des composants suivants :

  • Complément SQL Server 2014 Reporting Services pour les produits SharePoint

  • Service partagé SQL Server 2014 Reporting Services SharePoint

L'installation côte à côte empêché le service Windows SQL Server 2012 Reporting Services en mode natif de démarrer. Des messages d'erreur similaires aux messages suivants s'affichent dans le journal des événements Windows :

Log Name:   Application
Source:          Report Server (<SQL instance ID>)
Event ID:        117
Task Category:   Startup/Shutdown
Level:           Error
Keywords:        Classic
Description:     The report server database is an invalid version.

Log Name:      Application
Source:        Report Server (<SQL instance ID>)
Event ID:      107
Task Category: Management
Level:         Error
Keywords:      Classic
Description:   Report Server (DENALI) cannot connect to the report server database.

Pour plus d'informations, consultez Conseils, astuces et dépannage pour SQL Server 2014 Reporting Services.

4.2 Ordre de mise à niveau requis pour la batterie de serveurs à plusieurs nœuds SharePoint vers SQL Server 2014 Reporting Services

Problème : la génération de rapport dans une batterie de serveurs à plusieurs nœuds échoue si les instances du service partagé Reporting Services SharePoint sont mises à niveau avant toutes les instances du complément Reporting Services pour les produits SharePoint.

Solution de contournement : dans une batterie de serveurs SharePoint à plusieurs nœuds :

  1. Mettez d'abord à niveau toutes les instances du complément Reporting Services pour les produits SharePoint.

  2. Mettez ensuite à niveau toutes les instances du service partagé Reporting Services SharePoint.

Pour plus d'informations, consultez Conseils, astuces et dépannage pour SQL Server 2014 Reporting Services.

Icône de flèche utilisée avec le lien Retour en haut Haut

5.0 SQL Server 2014 RTM sur des machines virtuelles Windows Azure

5.1 L'Assistant Ajouter un réplica Windows Azure retourne une erreur lors de la configuration d'un écouteur de groupe de disponibilité dans Windows Azure

Problème : si un groupe de disponibilité a un écouteur, l'Assistant Ajouter un réplica Windows Azure renvoie une erreur lorsque vous tentez de configurer l'écouteur dans Windows Azure.

Cela est dû au fait que les écouteurs du groupe de disponibilité ont besoin d'une adresse IP dans chaque sous-réseau qui héberge des réplicas de groupe de disponibilité, y compris le sous-réseau Azure.

Solution de contournement :

  1. Dans la page de l'écouteur, attribuez une adresse IP statique libre dans le sous-réseau Azure qui hébergera le réplica de groupe de disponibilité à l'écouteur du groupe de disponibilité.

    Cela permet à l'Assistant d'ajouter le réplica dans Windows Azure.

  2. Une fois l'Assistant terminé, vous devez achever la configuration de l'écouteur dans Windows Azure comme expliqué dans la rubrique Configuration de l'écouteur pour les groupes de disponibilité AlwaysOn dans Windows Azure

Icône de flèche utilisée avec le lien Retour en haut Haut

6.0 Analysis Services

6.1 MSOLAP.5 doit être téléchargé, installé et enregistré pour une nouvelle batterie de serveurs SharePoint 2010 configurée avec SQL Server 2014

Problème :

  • Pour une batterie de serveurs SharePoint 2010 configurée avec un déploiement SQL Server 2014 RTM, les classeurs PowerPivot ne peuvent pas se connecter aux modèles de données, car le fournisseur référencé dans la chaîne de connexion n'est pas installé.

Solution de contournement :

  1. Téléchargez le fournisseur MSOLAP.5 à partir du Feature Pack SQL Server 2012 SP1. Installez le fournisseur sur les serveurs d'applications exécutant Excel Services. Pour plus d'informations, consultez la section « Fournisseur Microsoft Analysis Services OLE DB pour Microsoft SQL Server 2012 SP1 » Feature Pack de Microsoft SQL Server 2012 SP1.

  2. Inscrivez MSOLAP.5 en tant que fournisseur approuvé dans SharePoint Excel Services. Pour plus d'informations, consultez Ajouter MSOLAP.5 en tant que fournisseur de données approuvé dans Excel Services.

Informations complémentaires :

  • SQL Server 2014 contient MSOLAP.6. Les classeurs SQL Server 2012 et SQL Server 2014 PowerPivot utilisent MSOLAP.5. Si MSOLAP.5 n'est pas installé sur l'ordinateur exécutant Excel Services, Excel Services ne peut pas charger les modèles de données.

6.2 MSOLAP.5 doit être téléchargé, installé et enregistré pour une nouvelle batterie de serveurs SharePoint 2013 configurée avec SQL Server 2014

Problème :

  • Pour une batterie de serveurs SharePoint 2013 configurée avec un déploiement SQL Server 2014, les classeurs Excel référençant le fournisseur MSOLAP.5 ne peuvent pas se connecter aux modèles de données tabulaires, car le fournisseur référencé dans la chaîne de connexion n'est pas installé.

Solution de contournement :

  1. Téléchargez le fournisseur MSOLAP.5 à partir du Feature Pack SQL Server 2012 SP1. Installez le fournisseur sur les serveurs d'applications exécutant Excel Services. Pour plus d'informations, consultez la section « Fournisseur Microsoft Analysis Services OLE DB pour Microsoft SQL Server 2012 SP1 » Feature Pack de Microsoft SQL Server 2012 SP1.

  2. Inscrivez MSOLAP.5 en tant que fournisseur approuvé dans SharePoint Excel Services. Pour plus d'informations, consultez Ajouter MSOLAP.5 en tant que fournisseur de données approuvé dans Excel Services.

Informations complémentaires :

  • SQL Server 2014 contient MSOLAP.6. mais les classeurs PowerPivot SQL Server 2014 utilisent MSOLAP.5. Si MSOLAP.5 n'est pas installé sur l'ordinateur exécutant Excel Services, Excel Services ne peut pas charger les modèles de données.

6.3 La planification de l'actualisation des données est corrompue

Problème :

  • Vous mettez jour une planification de l'actualisation et la planification est endommagée et inutilisable.

Solution de contournement :

  1. Dans Microsoft Excel, supprimez les propriétés avancées personnalisées. Consultez la section « Solution de contournement » de l'article suivant de la Base de connaissances 2927748 Ko.

Informations complémentaires :

  • Lorsque vous mettez à jour une planification de l'actualisation des données d'un classeur, si la longueur sérialisée de la planification d'actualisation est inférieure à la planification d'origine, la taille du tampon n'est pas correctement mise à jour et les nouvelles informations de planification sont fusionnées avec les anciennes informations de planification, ce qui endommage la planification.

Icône de flèche utilisée avec le lien Retour en haut Haut

7.0 Data Quality Services

7.1 Pas de prise en charge des inter-versions pour Data Quality Services dans Master Data Services

Problème : les scénarios suivants ne sont pas pris en charge :

  • Master Data Services 2014 hébergé dans une base de données du moteur de base de données SQL Server dans SQL Server 2012 avec Data Quality Services 2012.

  • Master Data Services 2012 hébergé dans une base de données du moteur de base de données SQL Server dans SQL Server 2014 avec Data Quality Services 2014.

Solution de contournement : utilisez la même version de Master Data Services que la base de données du moteur de base de données et Data Quality Services.

Icône de flèche utilisée avec le lien Retour en haut Haut

8.0 Problèmes relatifs au Conseiller de mise à niveau

8.1 Le Conseiller de mise à niveau de SQL Server 2014 signale des problèmes de mise à niveau non pertinents pour SQL Server Reporting Services

Problème : le Conseiller de mise à niveau de SQL Server (SSUA) fourni avec le support de SQL Server 2014 signale incorrectement plusieurs erreurs lors de l'analyse du serveur SQL Server Reporting Services.  

Solution de contournement : ce problème est résolu dans le Conseiller de mise à niveau fourni dans le Feature Pack de SQL Server 2014 pour SSUA.

8.2 Le Conseiller de mise à niveau de SQL Server 2014 signale une erreur lors de l'analyse du serveur SQL Server Integration Services

Problème : le Conseiller de mise à niveau de SQL Server (SSUA) fourni avec le support SQL Server 2014 signale une erreur lors de l'analyse du serveur SQL Server Integration Services. L'erreur affichée à l'utilisateur est la suivante :

The installed version of Integration Services does not support Upgrade Advisor. 
The assembly information is "Microsoft.SqlServer.ManagedDTS, Version=11.0.0.0, 
Culture=neutral, PublicKeyToken=89845dcd8080cc91

Solution de contournement : ce problème est résolu dans le Conseiller de mise à niveau fourni dans le Feature Pack de SQL Server 2014 pour SSUA.

Icône de flèche utilisée avec le lien Retour en haut Haut