Bindungsvariablen: Werden bei einigen integrierten Tabellenfunktionen nicht mehr als Parameter ignoriert¶
Achtung
Diese Verhaltensänderung ist in Bundle 2023_08 enthalten.
Den aktuellen Status des Bundles finden Sie unter Bundle-Verlauf.
In Snowflake Scripting, in Treibern oder bei der SQL-REST-API können Sie Bindungsvariablen in SQL-Anweisungen verwenden. Beispiele für die Verwendung von Bindungsvariablen finden Sie unter Verwenden einer Variablen in einer SQL-Anweisung (Bindung), Binden von Daten und Verwenden von Bindungsvariablen in einer Anweisung.
Diese Verhaltensänderung betrifft Fälle, in denen Sie eine Bindungsvariable direkt als eines der unten aufgeführten Argumente integrierter Tabellenfunktionen übergeben. Das Verhalten ändert sich wie folgt:
- Vor der Änderung:
Die Bindungsvariable wird ignoriert, und das Argument wird nicht an die Tabellenfunktion übergeben.
- Nach der Änderung:
Die Bindungsvariable wird als Argument an die Tabellenfunktion übergeben.
Beachten Sie, dass dies nicht die Fälle betrifft, in denen Sie eine Bindungsvariable an eine andere Funktion übergeben, bevor Sie das Ergebnis an ein Argument einer Tabellenfunktion übergeben. Wenn Sie z. B. die Funktion COPY_HISTORY aufrufen, betrifft diese Änderung die Fälle, in denen Sie eine Bindungsvariable direkt als START_TIME-Argument übergeben:
COPY_HISTORY( START_TIME=> ?, ...
Die Änderung gilt nicht für Fälle, in denen Sie die Bindungsvariable zuerst an eine andere integrierte Funktion übergeben:
COPY_HISTORY( START_TIME=> DATEADD('days', ?, ...
Wenn Sie das Verhalten vor der Änderung beibehalten möchten, können Sie Ihren Code so umschreiben, dass das Argument, das die Bindungsvariable verwendet, nicht übergeben wird. Wenn Sie z. B. die Funktion TASK_HISTORY aufrufen und die Ergebnisse nicht nach einer bestimmten Aufgabe gefiltert haben möchten, lassen Sie das Argument TASK_NAME beim Aufruf weg.
Die folgenden Argumente der Tabellenfunktionen sind von dieser Änderung betroffen:
Tabellenfunktion |
Betroffene Argumente |
---|---|
OBJECT_TYPE |
|
OBJECT_NAME |
|
TABLE_NAME |
|
START_TIME |
|
ROOT_TASK_NAME |
|
RESULT_LIMIT |
|
TABLE_NAME |
|
LOCATION |
|
FILE_FORMAT |
|
FILES |
|
POLICY_NAME |
|
REF_ENTITY_NAME |
|
REF_ENTITY_DOMAIN |
|
END_TIME_RANGE_START |
|
END_TIME_RANGE_END |
|
RESULT_LIMIT |
|
SESSION_ID |
|
RESULT_LIMIT |
|
USER_NAME |
|
WAREHOUSE_NAME |
|
END_TIME_RANGE_START |
|
END_TIME_RANGE_END |
|
RESULT_LIMIT |
|
OBJECT_NAME (das Argument |
|
TASK_NAME |
|
RESULT_LIMIT |
|
TASK_NAME |
|
DATE_RANGE_START |
|
DATE_RANGE_END |
|
WAREHOUSE_NAME |
|
DATE_RANGE_START |
|
DATE_RANGE_END |
Ref.: 1410