# Buffer

QVD-Dateien können mit Hilfe des buffer-Zusatzes im Skript automatisch generiert werden. Dieser Zusatz kann zusammen mit den meisten LOAD- und SELECT-Befehlen verwendet werden. Er dient dazu, die eingelesenen Daten in einer QVD-Datei zu cachen bzw. zu buffern.

Syntax:

Buffer [(option [ , option])] ( loadstatement | selectstatement )

option::= incremental | stale [after] amount [(days | hours)]

Ist keine Option definiert, wird die bei der ersten Skriptausführung generierte QVD-Datei auf unbestimmte Zeit weiterverwendet.

QVD-Buffer sind standardmäßig unter C:\ProgramData\QlikTech\QlikView\Buffers gespeichert.

Normalerweise werden QVD-Buffer automatisch gelöscht, auf die während der Ausführung des Skripts nicht mehr zugegriffen wird. Auch beim Löschen des Dokuments, das die QVD-Buffer erstellt hat, werden die QVD-Buffer automatisch mitgelöscht.

Argumente:

Buffer-Argumente

| Argument | Beschreibung |
| --- | --- |
| incremental | Durch die Option incremental wird nur ein Teil der Daten aus der Originaldatenquelle gelesen. Die bisherige Größe der Quelldatei ist im XML-Header der QVD-Datei gespeichert. Dies ist insbesondere für log-Dateien nützlich. Alle bereits in der QVD-Datei vorhandenen Datensätze werden von dort eingelesen, alle neuen Datensätze aus der Originaldatenquelle. Am Ende dieses Vorgangs wird eine aktualisierte Version der QVD-Datei gespeichert. Beachten Sie, dass die Option incremental nur mit LOAD-Befehlen und Textdateien verwendet werden kann und dass incremental load nicht verwendet werden kann, wenn alte Daten geändert oder gelöscht wurden! |
| stale [after] amount [(days \| hours)] | amount ist eine Zahl, die den Zeitraum definiert. Es dürfen Dezimalzahlen verwendet werden. Ist keine Einheit angegeben, nimmt das Programm Tage an.<br>Die Option stale after ist für Datenbanken vorgesehen, deren Originaldaten keinen Zeitstempel enthalten. Stattdessen definiert man, wie alt die QVD-Datei maximal sein darf, damit sie anstelle der Originaldatenquelle eingelesen werden kann. Eine Bedingung stale after gibt einfach einen Zeitraum für das Erstellungsdatum des QVD-Buffers an. Danach ist er nicht mehr gültig. Vor dem Zeitrahmen wird der QVD-Buffer als Quelle für Daten verwendet, und danach gilt die ursprüngliche Datenquelle. In diesem Fall wird eine aktualisierte Version der QVD-Datei gespeichert, und die Zeitspanne beginnt von Neuem. |

Beschränkungen:

Im Gebrauch des buffer-Zusatzes bestehen einige Einschränkungen. Die wichtigste besteht darin, dass der Zusatz nur für LOAD- oder SELECT-Befehle benutzt werden darf, die Daten aus einer Datei lesen.

Beispiel 1:

`Buffer SELECT * from MyTable;`

Beispiel 2:

`Buffer (stale after 7 
 days) SELECT * from MyTable;`

Beispiel 3:

`Buffer (incremental) LOAD 
 * from MyLog.log;`

## Weitere Informationen

* [Load](https://help.qlik.com/de-DE/qlikview/September2026/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptRegularStatements/Load.htm)
* [Select](https://help.qlik.com/de-DE/qlikview/September2026/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptRegularStatements/Select.htm)
* [QVD-Dateien](https://help.qlik.com/de-DE/qlikview/September2026/Subsystems/Client/Content/QV_QlikView/QVD_files.htm)