迁移期间的 django-south 错误
django-south Error during migrate
当我尝试使用 south 在 django 中迁移时出现以下错误。
Running migrations for sites:
- Migrating forwards to 0004_initial.
> sites:0002_initial
FATAL ERROR - The following SQL query failed: CREATE TABLE `django_site` (`id`
nteger AUTO_INCREMENT NOT NULL PRIMARY KEY, `domain` varchar(100) NOT NULL, `na
e` varchar(50) NOT NULL)
The error was: (1050, "Table 'django_site' already exists")
! Error found during real run of migration! Aborting.
! Since you have a database that does not support running
! schema-altering statements in transactions, we have had
! to leave it in an interim state between migrations.
! You *might* be able to recover with: = DROP TABLE `django_site` CASCADE; []
! The South developers regret this has happened, and would
! like to gently persuade you to consider a slightly
! easier-to-deal-with DBMS (one that supports DDL transactions)
! NOTE: The error which caused the migration to fail is further up.
Error in migration: sites:0002_initial
Traceback (most recent call last):
File "manage.py", line 10, in <module>
.............
django.db.utils.OperationalError: (1050, "Table 'django_site' already exists")
类似的问题也已解决 here。有什么解决办法吗?该错误似乎是由于 github 问题中讨论的 Create table 语句引起的,或者可能还有其他 errors.I 无法弄清楚。
如果 django 版本 < 1.7
python manage.py migrate yourapp --fake
其他
python manage.py migrate --fake
--fake:将迁移序列记录为已应用,但实际上并未运行。 -> more
当我尝试使用 south 在 django 中迁移时出现以下错误。
Running migrations for sites:
- Migrating forwards to 0004_initial.
> sites:0002_initial
FATAL ERROR - The following SQL query failed: CREATE TABLE `django_site` (`id`
nteger AUTO_INCREMENT NOT NULL PRIMARY KEY, `domain` varchar(100) NOT NULL, `na
e` varchar(50) NOT NULL)
The error was: (1050, "Table 'django_site' already exists")
! Error found during real run of migration! Aborting.
! Since you have a database that does not support running
! schema-altering statements in transactions, we have had
! to leave it in an interim state between migrations.
! You *might* be able to recover with: = DROP TABLE `django_site` CASCADE; []
! The South developers regret this has happened, and would
! like to gently persuade you to consider a slightly
! easier-to-deal-with DBMS (one that supports DDL transactions)
! NOTE: The error which caused the migration to fail is further up.
Error in migration: sites:0002_initial
Traceback (most recent call last):
File "manage.py", line 10, in <module>
.............
django.db.utils.OperationalError: (1050, "Table 'django_site' already exists")
类似的问题也已解决 here。有什么解决办法吗?该错误似乎是由于 github 问题中讨论的 Create table 语句引起的,或者可能还有其他 errors.I 无法弄清楚。
如果 django 版本 < 1.7
python manage.py migrate yourapp --fake
其他
python manage.py migrate --fake
--fake:将迁移序列记录为已应用,但实际上并未运行。 -> more