Ich änderte die Referenz eines Fremdschlüssels ohne den Namen des Feldes zu ändern, jetzt habe ich 2 Einschränkungen für den gleichen Feldpunkt auf verschiedene Tabellen. Mein Modell war wie diesesFremdschlüssel Migration mit Django Süden
class Activity(models.Model):
...
source = models.ForeignKey(FSObject)
und wurde
class Activity(models.Model):
...
source = models.ForeignKey(FreezedRef)
Und jetzt habe ich diese Nachricht bekommen, wenn meine Tests ausführen:
IntegrityError: (1452, 'Cannot add or update a child row: a foreign key constraint fails (`test_tcf_api`.`storage_activity`, CONSTRAINT `source_id_refs_id_fc96b4b044ceb88` FOREIGN KEY (`source_id`) REFERENCES `storage_fsobject` (`id`))')
Wie soll ich dieses alte Referenz löschen, offenbar, South hat es ausgelassen.
Warum denken Sie, MySQL ist schlecht? – Andrew
Es ist nicht Remote ACID-konform in der Weise, die wirklich blasen, keine ForeignKey-Einschränkungen, keine Transaktionen, Indexfelder nicht über 1k (Sie können argumentieren, dies wäre schlecht Design, aber immer noch das ist nur 300 Unicode-Zeichen), nicht indexieren Funktionsresultate, keine Implementierung von EXPLAIN ANALYZE, keine Transaktionen während Schema-Änderungsbefehlen, Abfragen verwenden nur einen Index pro Abfrage pro Tabelle (erzwingt die Verwendung einer Tonne mehrspaltiger Indizes, anstatt Indexe im laufenden Betrieb zu kombinieren). Ich bin sicher, ich könnte mehr denken, wenn ich etwas Zeit verbringen würde, im Grunde finde ich jede Woche etwas neues – John
Offensichtlich merke ich, dass ein paar (keine fk's und keine Transaktionen) von diesen mit innodb geholfen werden konnte, die meisten konnten nicht aber einige könnte. InnoDB sollte der Standard sein, wenn Sie schnell und locker spielen möchten, um etwas Leistung zu erhalten, die Sie zu MyISAM wechseln sollten, nicht umgekehrt. Das Einzige, was wirklich gut ist an MySQL IMO ist, dass es die erste weit verbreitete Open-Source-DB war und viele Möglichkeiten für das Web eröffnet hat. Etwas ähnliches kann über PHP gesagt werden und ich denke nicht, dass viele Leute argumentieren würden, dass PHP erstaunlich ist oder das beste Werkzeug. – John