바인드 변수: 더 이상 일부 기본 제공 테이블 함수에 대한 매개 변수로 무시되지 않음

주의

이 동작 변경 사항은 2023_08 번들에 있습니다.

번들의 현재 상태는 번들 기록 섹션을 참조하십시오.

Snowflake Scripting, 드라이버 또는 SQL REST API 에서는 SQL 문에 바인드 변수를 사용할 수 있습니다. (바인드 변수 사용의 예는 SQL 문에서 변수 사용하기(바인딩), 데이터 바인딩하기, 문에서 바인드 변수 사용하기 섹션을 참조하십시오.

이 동작 변경은 바인드 변수를 아래에 나열된 기본 제공 테이블 함수 인자 중 하나로 직접 전달하는 경우에 영향을 미칩니다. 동작은 다음과 같이 변경됩니다.

변경 전

바인드 변수가 무시되고 인자가 테이블 함수에 전달되지 않습니다.

변경 후

바인드 변수가 테이블 함수에 인자로 전달됩니다.

이는 결과를 테이블 함수 인자에 전달하기 전에 바인드 변수를 다른 함수에 전달하는 경우에는 영향을 미치지 않습니다. 예를 들어 COPY_HISTORY 함수를 호출하는 경우 이 변경 사항이 바인드 변수를 START_TIME 인자로 직접 전달하는 경우에 영향을 미칩니다.

COPY_HISTORY( START_TIME=> ?, ...
Copy

바인드 변수를 다른 기본 제공 함수에 먼저 전달하는 경우에는 이 변경 사항이 영향을 미치지 않습니다.

COPY_HISTORY( START_TIME=> DATEADD('days', ?, ...
Copy

변경 전 동작을 유지하려면 바인드 변수를 사용하는 인자를 전달하지 않도록 코드를 다시 작성할 수 있습니다. 예를 들어, TASK_HISTORY 함수를 호출하고 특정 작업으로 결과를 필터링하지 않으려면 호출에서 TASK_NAME 인자를 생략하십시오.

다음 테이블 함수 인자가 이 변경으로 영향을 받습니다.

테이블 함수

영향을 받는 인자

AUTO_REFRESH_REGISTRATION_HISTORY

OBJECT_TYPE

OBJECT_NAME

COPY_HISTORY

TABLE_NAME

START_TIME

CURRENT_TASK_GRAPHS

ROOT_TASK_NAME

DYNAMIC_TABLE_REFRESH_HISTORY

RESULT_LIMIT

EXTERNAL_TABLE_FILE_REGISTRATION_HISTORY

TABLE_NAME

INFER_SCHEMA

LOCATION

FILE_FORMAT

FILES

POLICY_REFERENCES

POLICY_NAME

REF_ENTITY_NAME

REF_ENTITY_DOMAIN

QUERY_HISTORY

END_TIME_RANGE_START

END_TIME_RANGE_END

RESULT_LIMIT

QUERY_HISTORY_BY_SESSION

SESSION_ID

RESULT_LIMIT

QUERY_HISTORY_BY_USER

USER_NAME

QUERY_HISTORY_BY_WAREHOUSE

WAREHOUSE_NAME

END_TIME_RANGE_START

END_TIME_RANGE_END

RESULT_LIMIT

TAG_REFERENCES

OBJECT_NAME(object_name 인자)

TASK_DEPENDENTS

TASK_NAME

TASK_HISTORY

RESULT_LIMIT

TASK_NAME

WAREHOUSE_LOAD_HISTORY

DATE_RANGE_START

DATE_RANGE_END

WAREHOUSE_NAME

WAREHOUSE_METERING_HISTORY

DATE_RANGE_START

DATE_RANGE_END

참조: 1410