OPEN(Snowflake Scripting)¶
커서를 엽니다.
커서에 대한 자세한 내용은 커서 작업하기 섹션을 참조하십시오.
참고
이 Snowflake Scripting 구문은 Snowflake Scripting 블록 내에서만 유효합니다.
구문¶
OPEN <cursor_name> [ USING (bind_variable_1 [, bind_variable_2 ...] ) ] ;
여기서:
cursor_name
커서의 이름입니다.
bind_variable
바인드 변수는 커서의 쿼리 정의(예:
WHERE
절에서)에 사용할 값을 보유합니다.바인딩의 예는 이 섹션의 뒷부분에 나오는 예에 포함되어 있습니다.
사용법 노트¶
쿼리의 결과 세트는 행 세트로 생각할 수 있습니다. 내부적으로, 커서를 열면 쿼리가 실행되고, 행을 읽고, 첫 번째 행에 대한 내부 포인터가 배치됩니다.
다른 SQL 쿼리와 마찬가지로, 쿼리 정의에서 가장 바깥쪽 수준에 ORDER BY 가 포함되어 있지 않으면 결과 세트에는 정의된 순서가 없습니다. 커서에 대한 결과 세트가 만들어진 경우, 커서가 닫힐 때까지 그 순서가 유지됩니다. 그러나 커서를 다시 선언하거나 다시 열면 행이 다른 순서로 생성될 수 있습니다.
유사하게, 커서가 닫힌 다음, 다시 열기 전에 기본 테이블이 업데이트되면 결과 세트도 변경될 수 있습니다.
예¶
DECLARE
c1 CURSOR FOR SELECT price FROM invoices;
BEGIN
OPEN c1;
...
다음은 커서 를 열 때 변수를 바인딩하는 방법을 보여줍니다.
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);
커서 사용에 대한 보다 완전한 예는 소개 커서 예 를 참조하십시오.