ComeçarComece de graça

Criando tabelas com SQLAlchemy

Antes, você usou o objeto Table para refletir uma tabela de um banco de dados existente, mas e se quiser criar uma tabela nova? Você ainda usaria o objeto Table; no entanto, precisaria substituir os parâmetros autoload e autoload_with por objetos Column.

O objeto Column recebe um nome, um tipo do SQLAlchemy com um formato opcional e argumentos nomeados opcionais para diferentes restrições.

Ao definir a tabela, lembre como, no vídeo, Jason passou 255 como o comprimento máximo de uma String usando Column('name', String(255)). Consultar os slides do vídeo pode ajudar.

Depois de definir a tabela, você pode criá-la no banco de dados usando o método .create_all() em metadata e fornecendo o engine como o único parâmetro. Mãos à obra!

Este exercício faz parte do curso

Introdução a Bancos de Dados em Python

Ver curso

Instruções do exercício

  • Importe Table, Column, String, Integer, Float, Boolean de sqlalchemy.
  • Construa uma nova tabela chamada data com as colunas 'name' (String(255)), 'count' (Integer()), 'amount' (Float()), e 'valid' (Boolean()). O segundo argumento de Table() precisa ser metadata, que já foi inicializado.
  • Crie a tabela no banco de dados passando engine para metadata.create_all().

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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 e executar o código