Delen via


Table.Buffer

Syntaxis

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

Over

Buffert een tabel in het geheugen, waarbij deze wordt geïsoleerd van externe wijzigingen tijdens de evaluatie. Buffering is beperkt. Het dwingt de evaluatie van scalaire celwaarden af, maar laat niet-scalaire waarden (records, lijsten, tabellen enzovoort) as-is.

  • table: de tabel die moet worden gebufferd in het geheugen.
  • options: [Optioneel] De volgende opties recordwaarden kunnen worden gebruikt:

Als u deze functie gebruikt, kunnen uw query's al dan niet sneller worden uitgevoerd. In sommige gevallen kunnen uw query's langzamer worden uitgevoerd vanwege de extra kosten voor het lezen van alle gegevens en het opslaan ervan in het geheugen, evenals het feit dat buffering downstream folding voorkomt. Als de gegevens niet hoeven te worden gebufferd, maar u alleen downstream folding wilt voorkomen, gebruikt u in plaats daarvan Table.StopFolding.

Voorbeeld 1

Laad alle rijen van een SQL-tabel in het geheugen, zodat downstreambewerkingen geen query's meer kunnen uitvoeren op de SQL-server.

Gebruik

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

uitvoer

table