ÎncepețiÎncepe gratuit

Crearea tabelelor cu SQLAlchemy

Anterior, ai folosit obiectul Table pentru a reflecta o tabelă dintr-o bază de date existentă, dar ce faci dacă vrei să creezi o tabelă nouă? Vei folosi tot obiectul Table, însă va trebui să înlocuiești parametrii autoload și autoload_with cu obiecte Column.

Obiectul Column primește un nume, un tip SQLAlchemy cu un format opțional și argumente keyword opționale pentru diferite constrângeri.

Când definești tabela, amintește-ți că în video Jason a transmis 255 ca lungime maximă a unui tip String folosind Column('name', String(255)). Poți consulta slide-urile din video dacă ai nevoie.

După ce definești tabela, o poți crea în baza de date folosind metoda .create_all() pe metadata și furnizând motorul ca unic parametru. Hai să începi!

Acest exercițiu face parte din cursul

Introducere în baze de date în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Importă Table, Column, String, Integer, Float, Boolean din sqlalchemy.
  • Creează o nouă tabelă numită data cu coloanele 'name' (String(255)), 'count' (Integer()), 'amount' (Float()) și 'valid' (Boolean()). Al doilea argument al funcției Table() trebuie să fie metadata, care a fost deja inițializat.
  • Creează tabela în baza de date transmițând engine la metadata.create_all().

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Import Table, Column, String, Integer, Float, Boolean from sqlalchemy
from sqlalchemy import ____, ____, ____, ____, ____, ____

# Define a new table with a name, count, amount, and valid column: data
data = Table('data', ____,
             Column(____, ____),
             Column('count', Integer()),
             Column(____, ____),
             Column(____, ____)
)

# Use the metadata to create the table
metadata.create_all(____)

# Print table details
print(repr(data))
Editează și rulează codul