Initial implementation of generic Excel-to-DB import tool
Supports .xls and .xlsx, Oracle and PostgreSQL via SQLAlchemy. Includes CLI (run/inspect/generate-config), YAML config, auto schema detection, and append/replace/upsert modes. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
# SQLAlchemy DSN — Beispiele:
|
||||
# PostgreSQL: postgresql+psycopg2://user:pass@localhost/mydb
|
||||
# Oracle: oracle+oracledb://user:pass@localhost:1521/?service_name=MYDB
|
||||
dsn: "postgresql+psycopg2://user:pass@localhost/mydb"
|
||||
|
||||
default_varchar_length: 255
|
||||
|
||||
sheets:
|
||||
- sheet: "Artikel" # Sheet-Name oder Index (0, 1, ...)
|
||||
header_row: 0 # 0-basierter Zeilenindex der Kopfzeile
|
||||
skip_rows: 0 # Zeilen vor der Kopfzeile überspringen
|
||||
target_table: "artikel"
|
||||
mode: "replace" # append | replace | upsert
|
||||
upsert_keys: []
|
||||
columns:
|
||||
- source: "Artikelnummer"
|
||||
target: "artikelnummer"
|
||||
dtype: "VARCHAR(50)"
|
||||
- source: "Bezeichnung"
|
||||
target: "bezeichnung"
|
||||
- source: "Preis"
|
||||
target: "preis"
|
||||
dtype: "NUMERIC(12,2)"
|
||||
- source: "Interne Notiz"
|
||||
target: "interne_notiz"
|
||||
skip: true # Spalte nicht importieren
|
||||
|
||||
- sheet: "Kunden"
|
||||
header_row: 0
|
||||
target_table: "kunden"
|
||||
mode: "upsert"
|
||||
upsert_keys: ["kundennummer"]
|
||||
columns:
|
||||
- source: "Kundennummer"
|
||||
target: "kundennummer"
|
||||
dtype: "VARCHAR(20)"
|
||||
- source: "Name"
|
||||
target: "name"
|
||||
- source: "E-Mail"
|
||||
target: "email"
|
||||
Reference in New Issue
Block a user