我想知道如果直接添加行或从模型表中删除某些内容,这可能会产生任何问题。我想也许Django记录了所有表中的行数?或者这会弄乱自动生成的ID?
我认为这不重要,但我使用的是MySql。
答案 0 :(得分:1)
既然你可以让Django在预先存在的数据库(一个不是由Django创建的数据库)上工作,我认为如果你访问/编写你自己的应用程序的表(你可能想要的话),你会遇到问题避免修改Django的内部表格,如auth
,permission
,content_type
等,直到您熟悉它们为止。
当您通过Django创建模型时,Django不存储计数或任何内容(除非您的应用程序确实存在),因此如果您在SQL数据库上使用Django创建模型,然后让另一个应用程序写入/读取,则没关系来自同一个SQL表
如果您使用Django信号,那么不会通过DB直接修改SQL表来触发这些信号,因此您可能需要注意这样的副作用。
您的RDBMS处理它自己生成的ID和参照完整性,计数等,因此您不必担心会弄乱它。
答案 1 :(得分:1)
不,这不是问题,因为Django做的与你“直接”到数据库一样,它执行SQL语句,并且自动生成的id由数据库服务器(在这种情况下是MySql服务器)处理,无论如何SQL查询的来源,无论是Mysql Client还是Django。