提问者:小点点

向现有表添加新列-烧瓶Sqlalchemy


我正在尝试用数据向exists表添加新列。 问题是我不知道怎么做,我不想删除整个表,因为我已经有数据。

我该怎么办? 如何添加另一列而不影响exists表

**这是我的桌子**

class Movies(db.Model):
__tablename__ = 'movies'
id = db.Column(db.String(300), primary_key=True, unique=True)
cat_id = db.Column(db.String(300), db.ForeignKey('category.id', ondelete='CASCADE'), nullable=False)
category = db.relationship('Category', backref='movies')
title = db.Column(db.String(250), nullable=False)
link = db.Column(db.String(250), nullable=False)
duration = db.Column(db.String(250), nullable=False)
thumb_large = db.Column(db.String(250), nullable=False)
thumb = db.Column(db.String(250), nullable=False)
embed = db.Column(db.String(250), nullable=False)
tags = db.Column(db.String(250), nullable=False)
published = db.Column(db.String(250), nullable=False)

现在我想添加一个新列,它是video_id=db.column(db.string(250))。 当我尝试添加它时,我得到的错误是[sql:ALTER TABLE movies add COLUMN video_id VARCHAR(250)NOT NULL]

我该怎么办?


共1个答案

匿名用户

有一个库可以帮助管理数据库迁移。 https://flask-migrate.readthedocs.io/en/latest/

而且,如果您想避免额外的依赖,并且不害怕破坏某些东西,您可以运行错误引用的原始SQL命令。

更改表电影添加列video_id VARCHAR(250)NOT null