none
Equivalent de "bulk collect" d'Oracle sur SQL Server ? RRS feed

  • Question

  • Bonjour,
    je vais bientôt passer d'Oracle 10g à sql server 2005.
    J'utilise la fonctionnalité "bulk collect" d'ORACLE dans les SELECT, et j'aurais voulu savoir
    s'il en existe un équivalent sur SQL Server.
    Merci pour vos réponses,
    bonne journée
    • Déplacé sudarshans1 mercredi 3 février 2010 23:06 Forums Consolidation (Origine :SQL Server - Accès aux données, TSQL, XML, CLR)
    mardi 4 septembre 2007 07:32

Réponses

Toutes les réponses

  • alors, vraiment personne ne peut m'aider ?

    Cette fonctionnalité permet de sélectionner
    n lignes d'un select dans un tableau (de records), en une seule opération
    et est extrêmement performante.

    Peut-être cela existe-t-il sur SQL sous un autre nom ?

    bonne soirée et merci d'avance
    jeudi 6 septembre 2007 18:48
  • Bonsoir,

     

    il y a sans doute celà,... mais quel est l'objectif !

     

    Si tu as un exemple d'utilisation, ce sera plus facile.

     

    A bientôt,

    jeudi 6 septembre 2007 20:42
    Modérateur
  • Bonsoir Thierry,
    donc , un exemple :
    récupérer 1500 lignes de la table A, compléter les enregistrements, et les insérer
    dans une table B.

    Méthode 1)
    a) sélectionner une ligne de la table A
    traitement de l'enreg.
    insertion de l'enreg. dans la table B
    aller en a)

    Méthode 2 avec bulk collect)
    sélectionner toutes les lignes dans un tableau d'enregistrements (en 1 seule opération)
    compléter les enregistrements dans le tableau
    insérer les enregistrements à partir du tableau dans la table B (en 1 seule opération)

    La méthode 2 permet un gain de temps d'exécution d'un facteur 20 à 25 (!).

    En outre, on obtient le même gain pour des volumes de données bien plus faibles.

    A bientôt, et merci pour la réponse,
    vendredi 7 septembre 2007 20:49