📅  最后修改于: 2023-12-03 15:02:57.586000             🧑  作者: Mango
migrations.RunSQL
是 Django 数据库迁移中的一个操作,用于在数据库中直接执行 SQL 语句。通常情况下,Django 的 ORM 可以通过模型来自动生成 SQL 语句并执行,但在某些情况下可能需要手动执行 SQL 语句。
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('myapp', '0001_initial'),
]
operations = [
migrations.RunSQL('ALTER TABLE myapp_mymodel ADD COLUMN is_featured BOOLEAN NOT NULL DEFAULT FALSE;'),
]
这里的 migrations.RunSQL
操作将 SQL 语句 "ALTER TABLE myapp_mymodel ADD COLUMN is_featured BOOLEAN NOT NULL DEFAULT FALSE;" 添加到数据迁移操作列表中,每次运行数据迁移时,该语句都会被在数据库中执行。
虽然 migrations.RunSQL
可以方便地执行 SQL 语句,但在使用时需要注意以下事项: