OPEN (Snowflakeスクリプト)¶
カーソルを開きます。
カーソルの詳細については、 カーソルの操作 をご参照ください。
注釈
この Snowflakeスクリプト 構造は、 Snowflakeスクリプトブロック 内でのみ有効です。
構文¶
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);
カーソルの使用のより包括な例については、 カーソルの紹介例 をご参照ください。