Django告诉我syncdb上已存在表 - 无法弄清楚原因

时间:2009-08-16 08:39:07

标签: django django-syncdb

http://pastebin.com/f609771cc

发布模型

得到错误:(是的,它的窗口)   在defaulterrorhandler中的文件“C:\ Python25 \ lib \ site-packages \ MySQLdb \ connections.py”,第35行     提出错误类,错误值 _mysql_exceptions.OperationalError:(1050,“表'memorial_music'已存在”)

扫描整个项目目录,仅有两次引用memorial_music

一次作为表名,一次作为表名'memorial_music_category'

这个让我挠头,有什么想法吗?

4 个答案:

答案 0 :(得分:2)

django-mptt是罪魁祸首

将memorial_music的表重命名为memorial_music_library,一切顺利

谢谢django的manage.py sqlall appname

答案 1 :(得分:1)

作为Django新手,我一直有syncdb问题。每次我运行它我会得到Error **表已经存在。搜索无效的答案后,一遍又一遍地读取syncdb:“为尚未创建表格的INSTALLED_APPS中的所有应用程序创建数据库表。”。我终于意识到,当我做了最初的python manage.py startapp UserData .... UserData的大写是搞乱了Django(我正在使用MYSQL)。如果它会调用它userData我不会有任何问题。我希望这可以帮助那些遇到同样问题的人。

修改 **

也许这不是大写的问题,我认为在Django中命名一个名为userData的表只是不起作用。

答案 2 :(得分:1)

我今天遇到同样的问题。 确保所有项目文件夹名称都是小写的。我认为这一切都会成功。

答案 3 :(得分:0)

投诉是该表已存在在数据库中。 Django无法更新现有表。您需要从MySQL数据库中删除表,再次从syncdb中删除表,或者手动将表模式调整为模型。