Table.Buffer

Синтаксис

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

О программе

Буферизирует таблицу в памяти, изолируя ее от внешних изменений во время оценки. Буферизация является неполной. Она приводит к вычислению любых скалярных значений ячеек, но оставляет нескалярные значения (записи, списки, таблицы и т. д.) в неизменном виде.

Обратите внимание, что использование этой функции может ускорить выполнение запросов. В некоторых случаях это может замедлить выполнение запросов из-за добавленных затрат на чтение всех данных и их сохранение в памяти, а также из-за того, что буферизация предотвращает последующее свертывание. Если данные не требуется буферизовать, и вы просто хотите исключить подчиненное свертывание, используйте Table.StopFolding.

Пример 1

Загрузка всех строк таблицы SQL в память, чтобы любые последующие операции больше не могли выполнять запросы к SQL Server.

Использование

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

Выходные данные

table