Conectarea la Baze de Date cu read_sql și to_sql în pandas

io pandas 2.x / 3.x Q&A / Distribuie cod

Interogarea directă a bazelor relaționale SQL (PostgreSQL, SQLite, MySQL) și salvarea tabelelor prin SQLAlchemy.

Sintaxă
pd.read_sql(sql, con) / df.to_sql(name, con, if_exists='append', index=False)

Funcțiile pd.read_sql() și df.to_sql() conectează pandas direct la motoare de baze de date relaționale prin biblioteca SQLAlchemy. Puteți transmite fie numele unui tabel întreg, fie o interogare SQL arbitrară cu filtre complexe și join-uri.

Parametrul if_exists din to_sql controlează comportamentul la salvare: 'fail' (aruncă eroare), 'replace' (șterge și recreează tabelul) sau 'append' (adaugă rândurile noi).

Exemplu: Citire din PostgreSQL și scriere tabel de sinteză
import pandas as pd
from sqlalchemy import create_engine

# Crearea conexiunii prin SQLAlchemy:
engine = create_engine("postgresql+psycopg2://user:pass@localhost:5432/productie")

# Citirea directă a unei interogări agregate:
query = "SELECT categorie, sum(valoare) AS total FROM vanzari GROUP BY categorie"
df_raport = pd.read_sql(query, con=engine)

# Salvarea rezultatului calculat într-un tabel nou de sinteză:
df_raport.to_sql("raport_vanzari_categorii", con=engine, if_exists="replace", index=False)

Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Conectarea la Baze de Date cu read_sql și to_sql

Ai o nelămurire despre utilizarea comenzii Conectarea la Baze de Date cu read_sql și to_sql sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.