Python ストアドプロシージャからのデータアクセス

Snowpark ライブラリ APIs を使用して、ストアド プロシージャからデータにアクセスできます。

Snowflakeがストアドプロシージャ用に作成した Session オブジェクトを使用してデータにアクセスするには、 Snowparkライブラリ でAPIsを呼び出します。たとえば、 テーブルの DataFrame を作成 したり、 SQL ステートメントを実行したりできます。

セッションのコンテキスト(権限、現在のデータベースとスキーマなどを含む)は、ストアドプロシージャが 呼び出し元権限で実行されるか、 の所有者権限で実行されるかによって決まります。詳細については、 セッション状態へのアクセスおよび設定 をご参照ください。

詳細については、 Snowpark開発者ガイド をご参照ください。

データアクセスの例

以下の例では、Pythonのメソッドがあるテーブルから別のテーブルに指定した行数をコピーしています。このメソッドは次の引数を取ります。

  • Snowpark Session オブジェクト

  • 行をコピーするテーブルの名前

  • 行を保存するテーブルの名前

  • コピーする行の数。

この例のメソッドは文字列を返します。この例を Pythonワークシート で実行する場合は、 ワークシートの戻り値の型を変更 して String にします。

def run(session, from_table, to_table, count):

  session.table(from_table).limit(count).write.save_as_table(to_table)

  return "SUCCESS"
Copy