Zugriff auf Daten aus einer gespeicherten Python-Prozedur¶
Sie können auf Daten aus einer gespeicherten Prozedur zugreifen, indem Sie die Snowpark-Bibliothek-APIs verwenden.
Sie können das Session
-Objekt, das Snowflake für Ihre gespeicherte Prozedur erstellt, für den Datenzugriff verwenden, indem Sie APIs in der Snowpark-Bibliothek aufrufen. Sie können zum Beispiel einen DataFrame für eine Tabelle erstellen oder eine SQL-Anweisung ausführen.
Der Kontext wird für die Sitzung (z. B. die Berechtigungen, die aktuelle Datenbank, das aktuelle Schema usw.) dadurch bestimmt, ob die gespeicherte Prozedur mit Aufruferrechten oder mit Eigentümerrechten ausgeführt wird. Weitere Details dazu finden Sie unter Zugriff auf und Einstellung des Sitzungsstatus.
Weitere Informationen dazu finden Sie im Snowpark-Entwicklerhandbuch.
Beispiel für Datenzugriff¶
Es folgt ein Beispiel, in dem eine Python-Methode eine bestimmte Anzahl von Zeilen aus einer Tabelle in eine andere Tabelle kopiert. Der Methode werden die folgenden Argumente übergeben:
Ein Snowpark-
Session
-ObjektDer Name der Tabelle, aus der die Zeilen kopiert werden sollen
Der Name der Tabelle, in der die Zeilen gespeichert werden sollen
Die Anzahl der zu kopierenden Zeilen
Die Methode in diesem Beispiel gibt eine Zeichenfolge zurück. Wenn Sie dieses Beispiel in einem Python-Arbeitsblatt ausführen, ändern Sie den Rückgabetyp des Arbeitsblatts in einen String.
def run(session, from_table, to_table, count):
session.table(from_table).limit(count).write.save_as_table(to_table)
return "SUCCESS"