django删除数据表以及对数据表进行改动更新

博主大学做项目摸索使用Django,处理数据库时遇到难题。网上常见的Django删除数据表方法复杂且易使数据库崩溃,该方法适用于误删表的情况。博主经研究给出主动删除数据表的简洁方法,还提及增减表属性的操作及注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实在是气的不行,被坑的太难受了,为了防止有人继续走弯路,我来写这篇文章了。
本人属于大学需要做项目,自己摸索着使用django,所以最开始django的数据库就是个老大难的问题,当我生成的数据表我想删除时,我去网上查了很多解答,那些办法不仅复杂的不行,还无数次的把我的数据库整崩,然后我就不断的重新建新的数据库以至于完全不敢对数据库进行任何改动,今天经过不断摸索,终于知道了django如何非常简洁的删除数据表以及对数据表进行改动。不多说言归正传。
网上的所有对于django删除数据表的解答大体来可以总结如下:
1首先删除数据表,使用drop命令
2删除migrations中的initial文件
3删除django_migrations中的对应的行
4注释掉views方法(因为调用了数据库)
5重新运行python manage. py makemigrations和python manage. py migrate
本人一直使用这种方法删除数据表,结果就是数据库一次又一次被整崩了,然后就很让人崩溃。在我的细心研究下,我发现这并不适应需要主动删除数据表的人,这种方法适应于不小心删除了某张数据表而导致使用python manage. py make migrations 无法生成迁移文件或者使用python manage. py migrate 无法转移迁移文件到数据库的人。真正需要主动删除数据表的方法如下:
1 找到models.py文件,里面有你的各个数据表,直接删除掉你想删除的数据表的生成代码

2 然后将所有调用到该数据表的地方注释掉,重新运行python manage. py make migrations 和python manage. py migrate 即可。
3 对于需要增加或者删除数据表的属性同理,直接对数据表的生成代码操作后重新运行
python manage. py makemigrations 和python manage. py migrate即可。但需要注意,添加属性的属性值需要添加一个default,比如style=models.CharField(max_length=200,default=‘i’)

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值