執(zhí)行Django數(shù)據(jù)遷移時(shí)報(bào) 1091錯(cuò)誤及解決方法
問題描述
今天在Pycharm 中的Terminal下,執(zhí)行數(shù)據(jù)遷移操作時(shí),第一步: Python manage.py makemigrations ,是沒有任何問題,但就是在執(zhí)行真正的數(shù)據(jù)遷移時(shí),也就是第二步:Python manage.py migrate 時(shí),報(bào)錯(cuò),錯(cuò)誤截圖如下

大概的意思就是 錯(cuò)誤代碼1091,原因是 “無法刪除'dt_id';請(qǐng)檢查列/鍵是否存在”。
問題的解決
分析:
可能是數(shù)據(jù)庫中的字段結(jié)構(gòu),已經(jīng)完成了對(duì)此字段的修改,但是在執(zhí)行數(shù)據(jù)遷移的時(shí)候,生成的某個(gè)日志文件(一般形如:0003_auto_20191011_2032.py),可能還有一些刪除的字段
# Generated by Django 2.0.6 on 2019-10-11 12:32
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('modelapp', '0002_student'),
]
operations = [
migrations.RemoveField(
model_name='student',
name='age',
),
migrations.RemoveField(
model_name='student',
name='birthday',
),
migrations.RemoveField(
model_name='student',
name='salary',
),
migrations.AlterField(
model_name='student',
name='tel',
field=models.CharField(max_length=20),
),
]
如上圖的紅色字體問題部分,就是我們這個(gè)數(shù)據(jù)遷移時(shí)報(bào)錯(cuò)的原因,只要將紅色字體部分注釋掉即可
# Generated by Django 2.0.6 on 2019-10-11 12:32
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('modelapp', '0002_student'),
]
operations = [
# migrations.RemoveField(
# model_name='student',
# name='age',
# ),
# migrations.RemoveField(
# model_name='student',
# name='birthday',
# ),
# migrations.RemoveField(
# model_name='student',
# name='salary',
# ),
migrations.AlterField(
model_name='student',
name='tel',
field=models.CharField(max_length=20),
),
]
然后我們?cè)俅螆?zhí)行 Python manage.py migrate 的時(shí)候就能成功遷移數(shù)據(jù)了。
總結(jié)
以上所述是小編給大家介紹的執(zhí)行Django數(shù)據(jù)遷移時(shí)報(bào) 1091錯(cuò)誤及解決方法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
python實(shí)現(xiàn)在字符串中查找子字符串的方法
這篇文章主要介紹了python實(shí)現(xiàn)在字符串中查找子字符串的方法,涉及Python中find方法的相關(guān)使用技巧,需要的朋友可以參考下2015-07-07
使用Python讀取Excel數(shù)據(jù)在PPT中創(chuàng)建圖表
使用Python從Excel讀取數(shù)據(jù)并在PowerPoint幻燈片中創(chuàng)建圖表不僅能夠極大地簡(jiǎn)化圖表創(chuàng)建過程,通過Python這一橋梁,我們可以輕松實(shí)現(xiàn)數(shù)據(jù)自動(dòng)化處理和圖表生成,本文將演示如何使用Python讀取Excel數(shù)據(jù)在PPT中創(chuàng)建圖表,需要的朋友可以參考下2024-08-08
Python調(diào)用釘釘自定義機(jī)器人的實(shí)現(xiàn)
這篇文章主要介紹了Python調(diào)用釘釘自定義機(jī)器人的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01
python實(shí)現(xiàn)不同文件夾下的函數(shù)相互調(diào)用
這篇文章主要介紹了python實(shí)現(xiàn)不同文件夾下的函數(shù)相互調(diào)用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08
Python中讓MySQL查詢結(jié)果返回字典類型的方法
這篇文章主要介紹了Python中讓MySQL查詢結(jié)果返回字典類型的方法,默認(rèn)情況下Mysql返回的是元組類型,本文實(shí)現(xiàn)了返回字典類型,需要的朋友可以參考下2014-08-08
python中pandas nlargest()的詳細(xì)用法小結(jié)
df.nlargest()是一個(gè)DataFrame的方法,用于返回DataFrame中最大的n個(gè)值所在的行,通過調(diào)用nlargest()方法,我們返回了分?jǐn)?shù)最高的三個(gè)行,并按照降序排列,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2023-10-10

