Partager via


Table.Buffer

Syntaxe

Table.Buffer(table as table, optional options as nullable record) as table

À propos

Place une table dans la mémoire tampon, en l’isolant des modifications externes pendant l’évaluation. La mise en mémoire tampon est superficielle. Elle force l’évaluation de toutes les valeurs de cellule scalaire, mais laisse des valeurs non scalaires (enregistrements, listes, tables, et ainsi de suite) as-is.

  • table: table à mettre en mémoire tampon en mémoire.
  • options: [Facultatif] Les valeurs d’enregistrement des options suivantes peuvent être utilisées :

L’utilisation de cette fonction peut ou non accélérer l’exécution de vos requêtes. Dans certains cas, vos requêtes peuvent s’exécuter plus lentement en raison du coût supplémentaire de lecture de toutes les données et de leur stockage en mémoire, ainsi que du fait que la mise en mémoire tampon empêche le repli en aval. Si les données n’ont pas besoin d’être mises en mémoire tampon, mais que vous souhaitez simplement empêcher le pliage en aval, utilisez Table.StopFolding plutôt.

Exemple 1

Chargez toutes les lignes d’une table SQL en mémoire afin que toutes les opérations en aval ne puissent plus interroger le serveur SQL.

Utilisation

let
    Source = Sql.Database("SomeSQLServer", "MyDb"),
    MyTable = Source{[Item="MyTable"]}[Data],
    BufferMyTable = Table.Buffer(MyTable)
in
    BufferMyTable

Output

table