|
"""Initial migration with is_admin |
|
|
|
Revision ID: 47f8e17c22ae |
|
Revises: |
|
Create Date: 2025-05-26 02:43:18.802116 |
|
|
|
""" |
|
from alembic import op |
|
import sqlalchemy as sa |
|
|
|
|
|
|
|
revision = '47f8e17c22ae' |
|
down_revision = None |
|
branch_labels = None |
|
depends_on = None |
|
|
|
|
|
def upgrade(): |
|
with op.batch_alter_table('analysis_reports', schema=None) as batch_op: |
|
batch_op.alter_column('id', |
|
existing_type=sa.INTEGER(), |
|
nullable=False, |
|
autoincrement=True) |
|
batch_op.alter_column('emotion', |
|
existing_type=sa.TEXT(), |
|
type_=sa.String(length=50), |
|
existing_nullable=True) |
|
batch_op.alter_column('confidence', |
|
existing_type=sa.REAL(), |
|
type_=sa.Float(), |
|
existing_nullable=True) |
|
batch_op.alter_column('created_at', |
|
existing_type=sa.TEXT(), |
|
type_=sa.DateTime(), |
|
existing_nullable=True, |
|
existing_server_default=sa.text('(CURRENT_TIMESTAMP)')) |
|
|
|
with op.batch_alter_table('chats', schema=None) as batch_op: |
|
batch_op.alter_column('chat_id', |
|
existing_type=sa.TEXT(), |
|
type_=sa.String(length=36), |
|
nullable=False) |
|
batch_op.alter_column('created_at', |
|
existing_type=sa.TEXT(), |
|
type_=sa.DateTime(), |
|
existing_nullable=True) |
|
batch_op.alter_column('title', |
|
existing_type=sa.TEXT(), |
|
type_=sa.String(length=100), |
|
existing_nullable=True) |
|
|
|
with op.batch_alter_table('messages', schema=None) as batch_op: |
|
batch_op.alter_column('id', |
|
existing_type=sa.INTEGER(), |
|
nullable=False, |
|
autoincrement=True) |
|
batch_op.alter_column('chat_id', |
|
existing_type=sa.TEXT(), |
|
type_=sa.String(length=36), |
|
existing_nullable=True) |
|
batch_op.alter_column('sender', |
|
existing_type=sa.TEXT(), |
|
type_=sa.String(length=10), |
|
existing_nullable=True) |
|
batch_op.alter_column('timestamp', |
|
existing_type=sa.TEXT(), |
|
type_=sa.DateTime(), |
|
existing_nullable=True) |
|
|
|
with op.batch_alter_table('users', schema=None) as batch_op: |
|
batch_op.add_column(sa.Column('is_admin', sa.Boolean(), nullable=True)) |
|
batch_op.alter_column('id', |
|
existing_type=sa.INTEGER(), |
|
nullable=False, |
|
autoincrement=True) |
|
batch_op.alter_column('username', |
|
existing_type=sa.TEXT(), |
|
type_=sa.String(length=50), |
|
existing_nullable=False) |
|
batch_op.alter_column('email', |
|
existing_type=sa.TEXT(), |
|
type_=sa.String(length=100), |
|
existing_nullable=False) |
|
batch_op.alter_column('password_hash', |
|
existing_type=sa.TEXT(), |
|
type_=sa.String(length=200), |
|
existing_nullable=False) |
|
batch_op.alter_column('created_at', |
|
existing_type=sa.TEXT(), |
|
type_=sa.DateTime(), |
|
existing_nullable=True, |
|
existing_server_default=sa.text('(CURRENT_TIMESTAMP)')) |
|
|
|
|
|
|
|
|
|
def downgrade(): |
|
|
|
with op.batch_alter_table('users', schema=None) as batch_op: |
|
batch_op.alter_column('created_at', |
|
existing_type=sa.DateTime(), |
|
type_=sa.TEXT(), |
|
existing_nullable=True, |
|
existing_server_default=sa.text('(CURRENT_TIMESTAMP)')) |
|
batch_op.alter_column('password_hash', |
|
existing_type=sa.String(length=200), |
|
type_=sa.TEXT(), |
|
existing_nullable=False) |
|
batch_op.alter_column('email', |
|
existing_type=sa.String(length=100), |
|
type_=sa.TEXT(), |
|
existing_nullable=False) |
|
batch_op.alter_column('username', |
|
existing_type=sa.String(length=50), |
|
type_=sa.TEXT(), |
|
existing_nullable=False) |
|
batch_op.alter_column('id', |
|
existing_type=sa.INTEGER(), |
|
nullable=True, |
|
autoincrement=True) |
|
batch_op.drop_column('is_admin') |
|
|
|
with op.batch_alter_table('messages', schema=None) as batch_op: |
|
batch_op.alter_column('timestamp', |
|
existing_type=sa.DateTime(), |
|
type_=sa.TEXT(), |
|
existing_nullable=True) |
|
batch_op.alter_column('sender', |
|
existing_type=sa.String(length=10), |
|
type_=sa.TEXT(), |
|
existing_nullable=True) |
|
batch_op.alter_column('chat_id', |
|
existing_type=sa.String(length=36), |
|
type_=sa.TEXT(), |
|
existing_nullable=True) |
|
batch_op.alter_column('id', |
|
existing_type=sa.INTEGER(), |
|
nullable=True, |
|
autoincrement=True) |
|
|
|
with op.batch_alter_table('chats', schema=None) as batch_op: |
|
batch_op.alter_column('title', |
|
existing_type=sa.String(length=100), |
|
type_=sa.TEXT(), |
|
existing_nullable=True) |
|
batch_op.alter_column('created_at', |
|
existing_type=sa.DateTime(), |
|
type_=sa.TEXT(), |
|
existing_nullable=True) |
|
batch_op.alter_column('chat_id', |
|
existing_type=sa.String(length=36), |
|
type_=sa.TEXT(), |
|
nullable=True) |
|
|
|
with op.batch_alter_table('analysis_reports', schema=None) as batch_op: |
|
batch_op.alter_column('created_at', |
|
existing_type=sa.DateTime(), |
|
type_=sa.TEXT(), |
|
existing_nullable=True, |
|
existing_server_default=sa.text('(CURRENT_TIMESTAMP)')) |
|
batch_op.alter_column('confidence', |
|
existing_type=sa.Float(), |
|
type_=sa.REAL(), |
|
existing_nullable=True) |
|
batch_op.alter_column('emotion', |
|
existing_type=sa.String(length=50), |
|
type_=sa.TEXT(), |
|
existing_nullable=True) |
|
batch_op.alter_column('id', |
|
existing_type=sa.INTEGER(), |
|
nullable=True, |
|
autoincrement=True) |
|
|
|
op.create_table('sqlite_sequence', |
|
sa.Column('name', sa.NullType(), nullable=True), |
|
sa.Column('seq', sa.NullType(), nullable=True) |
|
) |
|
|
|
|