Partager via


Procédure : enregistrer des requêtes longues (ODBC)

Un exemple complet et disponible décrit le processus de création d'un fichier journal pour les requêtes longues. L'exemple de code complet se trouve dans le fichier LogLongRunningQuery.cpp que vous pouvez télécharger à partir de la page des Téléchargements SQL Server sur MSDN. Cet exemple a été développé à l'aide de Microsoft Visual C++ 2005 et conçu pour la version 3.0 ou ultérieure d'ODBC.

Remarque relative à la sécuritéRemarque relative à la sécurité

Si possible, utilisez l'authentification Windows. Si l'authentification Windows n'est pas disponible, invitez les utilisateurs à entrer leurs informations d'identification au moment de l'exécution. Évitez de stocker ces informations dans un fichier. Si vous devez rendre les informations d'identification persistantes, chiffrez-les avec l'API de chiffrement Win32.

Pour enregistrer des requêtes longues à l'aide de l'Administrateur ODBC

  1. Dans le Panneau de configuration, double-cliquez sur Outils d'administration, puis sur Sources de données (ODBC). (Vous pouvez également exécuter odbcad32.exe à partir de l'invite de commandes.)

  2. Cliquez sur l'onglet Utilisateur DSN, Système DSN ou Fichier DSN.

  3. Cliquez sur la source de données pour laquelle vous souhaitez enregistrer des requêtes longues.

  4. Cliquez sur Configurer.

  5. Dans l'Assistant Configuration DSN de Microsoft SQL Server, accédez à la page munie de l'option Enregistrer les requêtes à long terme dans le fichier journal.

  6. Sélectionnez Enregistrer les requêtes à long terme dans le fichier journal. Dans la zone, tapez le nom du fichier dans lequel les requêtes longues sont à enregistrer. Éventuellement, cliquez sur Parcourir pour rechercher le système de fichiers pour le journal des requêtes.

  7. Définissez un intervalle de délai des requêtes, en millisecondes, dans la zone Durée de requête longue (millisecondes).

Pour enregistrer des données de requêtes longues par programme

  1. Appelez SQLGetConnectAttr avec SQL_COPT_SS_PERF_QUERY_LOG et spécifiez le chemin d'accès complet et le nom du fichier journal des requêtes longues. Par exemple :

    C:\\Odbcqry.log
    
  2. Appelez SQLGetConnectAttr avec SQL_COPT_SS_PERF_QUERY_INTERVAL et définissez un intervalle de délai en millisecondes.

  3. Appelez SQLGetConnectAttr avec SQL_COPT_SS_PERF_QUERY et SQL_PERF_START pour commencer à enregistrer les requêtes longues.

  4. Appelez SQLGetConnectAttr avec SQL_COPT_SS_PERF_QUERY et SQL_PERF_STOP pour arrêter l'enregistrement des requêtes longues.