Identifier les problèmes avec IntelliSense - SQL Server Management Studio (SSMS)

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Dans certains cas, les options IntelliSense ne fonctionneront peut-être pas comme vous l'attendez. Ces cas sont les suivants :

Conditions qui affectent IntelliSense

Les conditions suivantes peuvent affecter le comportement d'IntelliSense :

  • Il y a une erreur de codage au-dessus du curseur.

    S'il existe une instruction incomplète ou une autre erreur de codage au-dessus du point d'insertion, IntelliSense ne peut pas analyser les éléments de code et par conséquent ne peut pas fonctionner. Pour réactiver IntelliSense, mettez en commentaire le code concerné.

  • Le point d'insertion est à l'intérieur d'un commentaire de code.

    Les options IntelliSense ne sont pas disponibles si le point d'insertion se trouve dans un commentaire de votre fichier source.

  • Le point d'insertion est à l'intérieur d'un littéral de chaîne.

    Les options IntelliSense ne sont pas disponibles si le point d'insertion se trouve à l'intérieur des guillemets entourant un littéral de chaîne, comme dans l'exemple suivant :

    WHERE FirstName LIKE 'Patri%|'

  • Les options automatiques ne sont pas activées.

    La plupart des fonctionnalités IntelliSense fonctionnent automatiquement par défaut. Vous pouvez toutefois désactiver n'importe quelle fonctionnalité.

    Même si l'option qui permet de compléter automatiquement les instructions est désactivée, vous pouvez utiliser une fonctionnalité IntelliSense. Pour plus d’informations, consultez Configurer IntelliSense (SQL Server Management Studio).

Requête de moteur de base de données IntelliSense

Les problèmes suivants s’appliquent à l’éditeur de requête du Moteur de base de données SQL Server :

  • La fonctionnalité IntelliSense de l’éditeur de requête du Moteur de base de données ne prend pas en charge tous les éléments de la syntaxe Transact-SQL . L'aide sur les paramètres ne prend pas en charge les paramètres dans certains objets, tels que les procédures stockées étendues. Pour plus d’informations, consultez Syntaxe Transact-SQL prise en charge par IntelliSense.

  • IntelliSense n’est disponible que si l’éditeur de requête du moteur de base de données est connecté à une instance du moteur de base de données de SQL Server 2008 (10.0.x) ou version ultérieure. IntelliSense n’est pas disponible quand l’éditeur de requête est connecté à des versions antérieures du Moteur de base de données.

  • IntelliSense est désactivé dans l’éditeur de requête du Moteur de base de données quand le mode SQLCMD est activé.

  • Les fonctionnalités IntelliSense ne couvrent pas les objets de base de données créés par une autre connexion après que votre fenêtre d'éditeur s'est connectée à la base de données. Si des objets sont absents dans les fonctionnalités IntelliSense telles que les listes de saisie semi-automatique, vous pouvez choisir l'un de ces trois mécanismes pour actualiser le cache d'objets pour votre fenêtre d'éditeur :

    • Sélectionnez le menu Edition , sélectionnez IntelliSense, puis Actualiser le cache local.

    • Utilisez le raccourci clavier CTRL+MAJ+R.

    • Déconnectez la fenêtre d’éditeur de l’instance du Moteur de base de données , puis reconnectez-la.

  • Les listes de saisie semi-automatique n'incluent pas les objets de base de données pour lesquels vous n'avez pas d'autorisations. IntelliSense signale les références aux objets pour lesquels vous disposez d'autorisations. Par exemple, si vous ouvrez un script écrit par un autre utilisateur, toute référence à un objet pour lequel cette personne dispose d'autorisations, contrairement à vous, est signalée comme incorrecte.

  • Les listes de saisie semi-automatique peuvent cesser de fonctionner si vous perdez la connexion à l’instance du Moteur de base de données. Rétablissez la connexion à l'instance.