2017-07-16 5 views
0

Ich möchte ein paar Tische fallen mit ‚knex‘ aber ich habe einen Fehler Cannot delete or update a parent row: a foreign key constraint fails, wenn ich versuche Tabelle mit Fremdschlüssel zu löschen:JS Knex: getting Fremdschlüssel für eine Tabelle

knex.schema.dropTableIfExists(name); 

I dropForeign() Funktion verwenden können Fremdschlüssel ablegen, aber ich muss den Fremdschlüsselnamen wissen.

Wie kann ich Fremdschlüssel mit 'Knex' erhalten?

Antwort

1

Das übliche Fremdschlüssel-Indexnamensformat in Knex lautet: tableName_columnName_foreign.
Beispiel: Wenn Sie in Tabelle chat ein Fremdschlüssel visitor_id dann seinen Index Name wird genannt haben: chat_visitor_id_foreign

Das heißt, würden Sie dies nicht benötigen, es sei denn, jemand den Standardfremdschlüssel Namen ausdrücklich außer Kraft gesetzt hat. Suchen Sie in diesem Fall in der Migrationsdatei danach oder suchen Sie in der Datenbank nach.

Verwandte Themen