Thanks to visit codestin.com
Credit goes to docs.snowflake.com

OPEN(Snowflake Scripting)

커서를 엽니다.

커서에 대한 자세한 내용은 커서 작업하기 섹션을 참조하십시오.

참고

Snowflake Scripting 구문은 Snowflake Scripting 블록 내에서만 유효합니다.

참고 항목:

DECLARE, FETCH, CLOSE

구문

OPEN <cursor_name> [ USING (bind_variable_1 [, bind_variable_2 ...] ) ] ;
Copy

여기서:

cursor_name

커서의 이름입니다.

bind_variable

바인드 변수는 커서의 쿼리 정의(예: WHERE 절에서)에 사용할 값을 보유합니다.

바인딩의 예는 이 섹션의 뒷부분에 나오는 예에 포함되어 있습니다.

사용법 노트

  • 쿼리의 결과 세트는 행 세트로 생각할 수 있습니다. 내부적으로, 커서를 열면 쿼리가 실행되고, 행을 읽고, 첫 번째 행에 대한 내부 포인터가 배치됩니다.

  • 다른 SQL 쿼리와 마찬가지로, 쿼리 정의에서 가장 바깥쪽 수준에 ORDER BY 가 포함되어 있지 않으면 결과 세트에는 정의된 순서가 없습니다. 커서에 대한 결과 세트가 만들어진 경우, 커서가 닫힐 때까지 그 순서가 유지됩니다. 그러나 커서를 다시 선언하거나 다시 열면 행이 다른 순서로 생성될 수 있습니다.

  • 유사하게, 커서가 닫힌 다음, 다시 열기 전에 기본 테이블이 업데이트되면 결과 세트도 변경될 수 있습니다.

DECLARE
    c1 CURSOR FOR SELECT price FROM invoices;
BEGIN
    OPEN c1;
    ...
Copy

다음은 커서 를 열 때 변수를 바인딩하는 방법을 보여줍니다.

DECLARE
    price_to_search_for FLOAT;
    price_count INTEGER;
    c2 CURSOR FOR SELECT COUNT(*) FROM invoices WHERE price = ?;
BEGIN
    price_to_search_for := 11.11;
    OPEN c2 USING (price_to_search_for);
Copy

커서 사용에 대한 보다 완전한 예는 소개 커서 예 를 참조하십시오.