IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MS SQL Server Discussion :

Equivalent curseur mais plus efficace en performance


Sujet :

MS SQL Server

  1. #1
    Membre actif
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2007
    Messages
    193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2007
    Messages : 193
    Points : 213
    Points
    213
    Par défaut Equivalent curseur mais plus efficace en performance
    Bonjour,

    J'ai bcp entendu parler depuis qq jours de la lenteur des curseurs en sql server.

    Ils me sont pourtant parfois si util.

    J'ai donc décider de les remplacer dans mes requètes sql critique (trigger, procédure stockées étant fréquement utiliser)

    J'ai donc chercher une alternative aux curseur avec les instructions WHILE

    Le problème vient que mes tables n'ont jamais une clé primaire unique étant un compteur
    Ce qui m'empeche bien évidement de faire un While @mavar
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select @mavar = min(mavar)
    ... where @mavar > mavar
    j'avais pour idée de faire un select count sur ma table et ensuite de faire une itération sur le nombre d'enregistrement, mais le count risque de me couter aussi cher en performance que le curseur donc je ne sais pas trop comment je peux faire pour itérer les résultats de mes select

    Merci de vos conseil

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 852
    Points : 52 992
    Points
    52 992
    Billets dans le blog
    6
    Par défaut
    Postez nous un code exemples avec vos curseurs et nous pourrons vous aidez. Là on discute dans le vide.

    Lisez l'article que j'ai écrit à ce sujet : http://sqlpro.developpez.com/cours/s...r_avoidCursor/

    A +

Discussions similaires

  1. Réponses: 1
    Dernier message: 14/06/2006, 11h11
  2. [MySQL] Incrémenter une sous-chaine le plus efficacement possible ?
    Par smrhp dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 12/06/2006, 15h58
  3. l'indexation la plus efficace
    Par amika dans le forum Requêtes
    Réponses: 3
    Dernier message: 02/02/2006, 16h24
  4. Equivalent Cygwin mais très petit
    Par chris_wafer_2001 dans le forum Autres Logiciels
    Réponses: 5
    Dernier message: 22/11/2005, 09h03
  5. SELECT avec RAND() mais plus avancé
    Par Sebou San dans le forum Requêtes
    Réponses: 6
    Dernier message: 06/11/2005, 09h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo