Built-in PostgreSQLおよびSQL Connectionで接続しているデータベース上のテーブルにデータを更新します。もし、Primary Keyが存在しなければ新しいレコードとして登録します。
# 📦 Package: morph_lib.database
# 🛠️ Function: insert_or_update_records
insert_or_update_records(
data: pd.DataFrame,
primary_keys: List[str]
table_name: str,
connection: Optional[str]
) -> None
対応データベース
- PostgreSQL
- MySQL
- Snowflake
Parameters
関数に渡す実データ。primary_keysで指定するカラムは必ず存在している必要があります。
テーブルのPrimary Keyとなるカラム名を指定する。
画面で登録したbuiltin以外のconnectionの向き先 (optional)※ 指定をしない場合はbuilt-in postgresqlに設定されます。
Example
from morph_lib.database import insert_or_update_records
@morph.func
@morph.load_data("user_data")
def func_name(context):
user_data: pd.DataFrame = context.data["user_data"]
insert_or_update_records(
user_data,
["user_id"]
"user",
)