Esplora la perfetta integrazione dei database Python e SQLite tramite SQLAlchemy ORM. Scopri come sfruttare i potenti strumenti e le best practice di Python per una gestione efficiente dei dati, combinando la semplicità di SQLite con la flessibilità di SQLAlchemy per operazioni di database avanzate.

• Python 3
• Python 3,12

Equipment list

Here you can find the list of equipment used to create this tutorial.

This link will also show the software list used to create this tutorial.

Esercitazione correlata – Python

In questa pagina, offriamo un rapido accesso a un elenco di tutorial relativi a Python.

Che cos’è l’ORM?

ORM è l’acronimo di Object-Relational Mapping. Si tratta di una tecnica di programmazione che consente di convertire i dati tra sistemi incompatibili in linguaggi di programmazione orientati agli oggetti. Nel contesto dei database, ORM viene utilizzato per mappare gli oggetti alle tabelle in un sistema di gestione di database relazionali.

Perché usare ORM in Python?

ORM in Python fornisce un modo conveniente per interagire con i database astraendo le istruzioni SQL sottostanti e consentendo agli sviluppatori di lavorare con gli oggetti direttamente nel loro codice. Ciò semplifica le operazioni del database, migliora la portabilità del codice, migliora la sicurezza prevenendo gli attacchi SQL injection, facilita la manutenzione del codice fornendo una sintassi chiara e concisa per le query del database e consente di semplificare i test unitari consentendo la manipolazione degli oggetti in memoria senza la necessità di configurazioni di database separate.

Che cos’è SQLAlchemy?

SQLAlchemy è un toolkit SQL open source e una libreria ORM (Object-Relational Mapping) per il linguaggio di programmazione Python. Fornisce un set completo di strumenti per lavorare con i database relazionali, consentendo agli sviluppatori di interagire con i database utilizzando oggetti Python. Il core di SQLAlchemy fornisce un linguaggio di espressioni SQL che consente la creazione e l’esecuzione di istruzioni SQL, mentre il suo ORM facilita la mappatura delle classi Python alle tabelle del database, consentendo agli sviluppatori di lavorare con le righe del database come oggetti.

Tutorial Python – Database SQLite con SQLAlchemy ORM

Installare SQLAlchemy usando PIP.

Copy to Clipboard

Importa moduli e funzionalità da SQLAlchemy.

Copy to Clipboard

Creare un motore SQLALCHEMY.

Copy to Clipboard

Questo motore viene utilizzato per stabilire una connessione al database.

L’argomento ECHO è facoltativo e viene utilizzato per visualizzare sullo schermo tutte le operazioni SQL eseguite.

Creare una classe base per dichiarare i modelli.

Copy to Clipboard

Definire un modello per la tabella.

Copy to Clipboard

Creare le tabelle nel database.

Copy to Clipboard

In questo modo viene creata una tabella nel database SQLite connesso. Definisce la struttura della tabella con cinque colonne: ID come chiave primaria impostata sull’incremento automatico, NAME, SPECIAL_MOVE, SS_LEVEL e EYE_COLOR.

Prima di qualsiasi interazione con il database, è necessario creare una sessione.

Copy to Clipboard

Inserire i dati nella tabella.

Copy to Clipboard

Salvare le modifiche apportate alla tabella.

Copy to Clipboard

Eseguire una query su tutte le informazioni memorizzate nella tabella.

Copy to Clipboard

Visualizzare le informazioni recuperate.

Copy to Clipboard

Ecco l’output del comando.

Copy to Clipboard

Visualizzare le informazioni recuperate come stringa formattata.

Copy to Clipboard

Ecco l’output del comando.

Copy to Clipboard

Facoltativamente, eseguire una query solo per campi specifici.

Copy to Clipboard

Ecco l’output del comando.

Copy to Clipboard

Chiudere la connessione al database.

Copy to Clipboard

Ecco lo script Python completo.

Copy to Clipboard

Conclusione

L’integrazione di SQLAlchemy ORM semplifica la gestione del database SQLite in Python, migliorando l’efficienza della manipolazione dei dati e offrendo un’esperienza orientata agli oggetti senza soluzione di continuità. Adotta con facilità solide operazioni sui dati.