ComenzarEmpieza gratis

Crear tablas con SQLAlchemy

Antes, usaste el objeto Table para reflejar una tabla de una base de datos existente, pero ¿y si quisieras crear una tabla nueva? Seguirías usando el objeto Table; sin embargo, tendrías que sustituir los parámetros autoload y autoload_with por objetos Column.

El objeto Column recibe un nombre, un tipo de SQLAlchemy con un formato opcional y argumentos de palabra clave opcionales para distintas restricciones.

Al definir la tabla, recuerda cómo en el vídeo Jason indicó 255 como longitud máxima de un String usando Column('name', String(255)). Echar un vistazo a las diapositivas del vídeo puede ayudarte.

Después de definir la tabla, puedes crearla en la base de datos usando el método .create_all() sobre los metadatos y proporcionando el engine como único parámetro. ¡Adelante!

Este ejercicio forma parte del curso

Introducción a las bases de datos en Python

Ver curso

Instrucciones del ejercicio

  • Importa Table, Column, String, Integer, Float, Boolean desde sqlalchemy.
  • Crea una tabla nueva llamada data con las columnas 'name' (String(255)), 'count' (Integer()), 'amount' (Float()) y 'valid' (Boolean()). El segundo argumento de Table() debe ser metadata, que ya se ha inicializado.
  • Crea la tabla en la base de datos pasando engine a metadata.create_all().

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# 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))
Editar y ejecutar código