Django 为什么运行sqlclear和syncdb不会删除sqlite3表

Django 为什么运行sqlclear和syncdb不会删除sqlite3表,django,sqlite,Django,Sqlite,我想删除一些我从Django教程中为polls应用程序创建的表。我正在使用Django 1.6.5 我首先关闭服务器,然后运行 manage.py sqlclear 这是打印出来的 BEGIN; DROP TABLE "polls_choice"; DROP TABLE "polls_poll"; COMMIT; 然后我就跑 manage.py syncdb 当我启动服务器时,转到管理面板,点击模型,所有的值仍然存在。为什么会这样?看起来,如果我要删除这些表,至少所有现有值都应该消失。,

我想删除一些我从Django教程中为
polls
应用程序创建的表。我正在使用Django 1.6.5

我首先关闭服务器,然后运行

manage.py sqlclear
这是打印出来的

BEGIN;
DROP TABLE "polls_choice";
DROP TABLE "polls_poll";

COMMIT;
然后我就跑

manage.py syncdb
当我启动服务器时,转到管理面板,点击模型,所有的值仍然存在。为什么会这样?看起来,如果我要删除这些表,至少所有现有值都应该消失。

manage.py sqlclear
命令只打印要执行的查询以清除数据库。您需要自己执行它们。
您还可以使用获取空数据库(仔细阅读文档,它实际上是在执行一些处理程序并添加初始装置(如果有的话))

django-admin.py sqlclear
打印给定应用程序名称的
DROP TABLE
SQL语句

--database
选项可用于指定要为其打印SQL的数据库


您需要在此处输入:

  python manage.py dbshell

然后粘贴sqlclear打印出来的内容

我想你说的是
sqlclear
而不是
sqldump
作为第一个命令。哎呀,你是对的,我在想sqlclear,但写了些别的东西。嗯,我想我必须将输出传输到
dbshell
或其他什么地方。我认为
syncdb
是一个执行任何“排队”查询的神奇命令,但是阅读
syncdb
的描述实际上没有什么作用……看看
flush
命令,它也可以做你想做的;)已试用
刷新
。看起来像是一个可以重置所有内容的终止开关(看看其他问题,似乎有一个名为
manage.py reset
)。