Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Verstehen / mySQL alias Austricksen von ForeignKey-Beziehungen in Django

  1. Das Fehlen einer tatsächlichen Einschränkung kann zu fehlerhaften Referenzen, ungültigen Eltern und anderen Arten von Dateninkonsistenzen führen. Ich bin kein Django-Experte, aber ich würde vermuten, dass Django die Beziehungen in den meisten Fällen immer noch gut handhaben wird, es sei denn, Sie fügen absichtlich einige ungültige Datensätze hinzu.

  2. Wenn Ihr RDBMS Fremdschlüsselbeschränkungen unterstützt, gibt es normalerweise absolut keinen Grund, sie nicht zu verwenden, und es könnte möglicherweise als Designfehler angesehen werden, sie zu ignorieren.

  3. Sie sollten erwägen, die wichtigsten Einschränkungen hinzuzufügen. Sie geben Ihrem DBMS nicht nur eine gute Vorstellung davon, wie die Abfragen optimiert werden können, sondern stellen auch die Konsistenz Ihrer Daten sicher. Ich bin mir ziemlich sicher, dass Django irgendwo eine Einstellung hat, die automatisch das SQL generiert, um die Schlüsseleinschränkungen hinzuzufügen, wenn Sie manage.py syncdb ausführen

Weitere Informationen darüber, warum Sie Fremdschlüssel bevorzugen sollten, finden Sie im MySQL-Fremdschlüsseldokumentation

Am interessantesten: