From a7064488469d97d442256179c8a1f994bc8a2860 Mon Sep 17 00:00:00 2001 From: Chris Smith Date: Wed, 4 Mar 2026 13:58:11 -0500 Subject: [PATCH] Add alembic revision and update db --- .../f7ca6be06288_added_megamillions_model.py | 96 ++++++++++++++++++ predictor.db | Bin 20480 -> 36864 bytes 2 files changed, 96 insertions(+) create mode 100644 migrations/versions/f7ca6be06288_added_megamillions_model.py diff --git a/migrations/versions/f7ca6be06288_added_megamillions_model.py b/migrations/versions/f7ca6be06288_added_megamillions_model.py new file mode 100644 index 0000000..9cef1dc --- /dev/null +++ b/migrations/versions/f7ca6be06288_added_megamillions_model.py @@ -0,0 +1,96 @@ +"""Added MegaMillions model + +Revision ID: f7ca6be06288 +Revises: 677501c83fe5 +Create Date: 2026-03-04 13:42:14.232761 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision: str = 'f7ca6be06288' +down_revision: Union[str, Sequence[str], None] = '677501c83fe5' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + """Upgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('mega_millions_draws', + sa.Column('draw_date', sa.Date(), nullable=False), + sa.Column('main_ball1', sa.Integer(), nullable=False), + sa.Column('main_ball2', sa.Integer(), nullable=False), + sa.Column('main_ball3', sa.Integer(), nullable=False), + sa.Column('main_ball4', sa.Integer(), nullable=False), + sa.Column('main_ball5', sa.Integer(), nullable=False), + sa.Column('mega_ball', sa.Integer(), nullable=False), + sa.Column('megaplier', sa.Integer(), nullable=False), + sa.PrimaryKeyConstraint('draw_date', name=op.f('pk_mega_millions_draws')) + ) + with op.batch_alter_table('powerball_draws', schema=None) as batch_op: + batch_op.alter_column('draw_date', + existing_type=sa.DATETIME(), + type_=sa.Date(), + existing_nullable=False) + batch_op.alter_column('main_ball1', + existing_type=sa.INTEGER(), + nullable=False) + batch_op.alter_column('main_ball2', + existing_type=sa.INTEGER(), + nullable=False) + batch_op.alter_column('main_ball3', + existing_type=sa.INTEGER(), + nullable=False) + batch_op.alter_column('main_ball4', + existing_type=sa.INTEGER(), + nullable=False) + batch_op.alter_column('main_ball5', + existing_type=sa.INTEGER(), + nullable=False) + batch_op.alter_column('powerball', + existing_type=sa.INTEGER(), + nullable=False) + batch_op.alter_column('power_play', + existing_type=sa.INTEGER(), + nullable=False) + + # ### end Alembic commands ### + + +def downgrade() -> None: + """Downgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + with op.batch_alter_table('powerball_draws', schema=None) as batch_op: + batch_op.alter_column('power_play', + existing_type=sa.INTEGER(), + nullable=True) + batch_op.alter_column('powerball', + existing_type=sa.INTEGER(), + nullable=True) + batch_op.alter_column('main_ball5', + existing_type=sa.INTEGER(), + nullable=True) + batch_op.alter_column('main_ball4', + existing_type=sa.INTEGER(), + nullable=True) + batch_op.alter_column('main_ball3', + existing_type=sa.INTEGER(), + nullable=True) + batch_op.alter_column('main_ball2', + existing_type=sa.INTEGER(), + nullable=True) + batch_op.alter_column('main_ball1', + existing_type=sa.INTEGER(), + nullable=True) + batch_op.alter_column('draw_date', + existing_type=sa.Date(), + type_=sa.DATETIME(), + existing_nullable=False) + + op.drop_table('mega_millions_draws') + # ### end Alembic commands ### diff --git a/predictor.db b/predictor.db index ac66fd4686cb0484fea8231a824b7cc5ff86ad6a..0b2e0eb7b610c503dec7d3e9546b279916106537 100644 GIT binary patch delta 661 zcmZozz}T>WX@ayMHv*VGC!NA7d!o<(ZzmxkguNUt` z?iTJW?yQZC9NbK{9Fs5b*<^4wv#_#@8yhpW>X#%Y<)r4OrYFYdX6EE%=I0g1rxYcY z7h@4(a}IKK3~^Nmadh%=RluS^L4%7Eq&Yq%u_RT&#W7^^2VRBAA9=+l%kpu8Xij4V zPrndXch?{=&jguQZwlin`1yw@_=WoT=qPY;f~`qP%*nwiTac5PT7*^B+21cXB*+nH zr9we=JT?ah1bO;821P1(yGBkvz{kht%El%hX*_v9zl1Rs{X4oM@JmYG7t$VX;Z!3qOj$WaS9jMS6j5WC=;Vn!Vv{%Uh>3!v z;Wof!H}Z*1zQAYAX3N4R9;iJzfLCJjB5nmn*3G>9&jonQ%*{;=43jO4(^5@0DSY8a J5m*$U001vSMv(vj