Κοινή χρήση μέσω


Table.Buffer

Σύνταξη

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

Πληροφορίες

Αποθηκεύει προσωρινά έναν πίνακα στη μνήμη, απομονώνοντάς τον από εξωτερικές αλλαγές κατά τη διάρκεια της αξιολόγησης. Η αποθήκευση σε buffer είναι ρηχή. Επιβάλλει την αξιολόγηση οποιωνδήποτε ανυσματικών τιμών κελιών, αλλά αφήνει τις μη ανυσματικές τιμές (εγγραφές, λίστες, πίνακες και ούτω καθεξής) ως έχει.

Σημειώστε ότι η χρήση αυτής της συνάρτησης μπορεί να κάνει τα ερωτήματά σας να εκτελούνται ταχύτερα. Σε ορισμένες περιπτώσεις, αυτό μπορεί να κάνει τα ερωτήματά σας να εκτελούνται πιο αργά λόγω του πρόσθετου κόστους ανάγνωσης όλων των δεδομένων και αποθήκευσής τους στη μνήμη, καθώς και του γεγονότος ότι η αποθήκευση σε buffer αποτρέπει την κατάντη αναδίπλωση. Εάν τα δεδομένα δεν χρειάζεται να έχουν buffer, αλλά απλώς θέλετε να αποτρέψετε την κατάντη αναδίπλωση, χρησιμοποιήστε τη table.StopFolding .

Παράδειγμα 1

Φορτώστε όλες τις γραμμές ενός πίνακα SQL στη μνήμη, έτσι ώστε οποιεσδήποτε λειτουργίες κατάντη δεν θα μπορούν πλέον να υποβάλλουν ερωτήματα στον διακομιστή SQL.

Χρήση

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

Έξοδος

table