Share via


Table.Buffer

Syntaxis

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

Info

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

Houd er rekening mee dat het gebruik van deze functie ervoor zorgt dat 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(dbo_MyTable)
in
    BufferMyTable

Uitvoer

table