更改数据
from playhouse.migrate import *
# SQLite example: my_db = SqliteDatabase('my_database.db') migrator = SqliteMigrator(my_db)
# 使用migrate()执行一个或多个操作 # 添加了两个列,删除一个列 title_field = CharField(default='') status_field = IntegerField(null=True) migrate( migrator.add_column('some_table', 'title', title_field), migrator.add_column('some_table', 'status', status_field), migrator.drop_column('some_table', 'old_column'), )
更多实例
pubdate_field = DateTimeField(null=True)
comment_field = TextField(default='')
migrate(
# 添加:指定表名,列名,表定义
migrator.add_column('table_name', 'pub_date', pubdate_field),
migrator.add_column('table_name', 'comment', comment_field),
# 删除: 指定表名,列名
migrator.drop_column('story', 'some_old_field'),
# 重命名列:指定表名,列名,新列名
migrator.rename_column('story', 'mod_date', 'modified_date'),
# 设置允许空或不允许空:表名,列名
migrator.drop_not_null('story', 'pub_date'), # 允许为空
migrator.add_not_null('story', 'modified_date'), # 非空
# 重命名表:指定表名,新表名
migrator.rename_table('story', 'stories_tbl'),
# 添加索引:表名,列名(集合),是否唯一
migrator.add_index('story', ('pub_date',), False), # 添加pub_date列索引,不唯一
migrator.add_index('story', ('category_id', 'title'), True), # 添加category_id, title 索引, 唯一
# 删除索引: 表明,列名
migrator.drop_index('story', 'story_pub_date_status')
)
更多实例参见官网:http://docs.peewee-orm.com/en/latest/peewee/playhouse.html?highlight=migrate#example-usage
from playhouse.migrate import *
|
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!