# Indizes / Fremdschlüssel löschen



## Paaax (25. Nov 2013)

Hallo ihr,

ich möchte eine große Menge an Zeilen in meine Datenbank einfügen. In vielen Foren kam der Tipp vorher die Indizes meiner Datenbank sowie alle Fremdschlüsselbeziehungen zu löschen und nach dem Einfügen meiner Zeilen wieder zu erstellen. Nun meine Frage, wie finde ich heraus wie die Indizes in der Datenbank heißen? Sind das immer meine Primärschlüssel?

Meine Fremdschlüssel de-/aktiviere ich so, wäre das richtig?
[Java]
//löschen
ALTER TABLE accounts DROP CONSTRAINT abc;
//hinzufügen
ALTER TABLE accounts ADD CONSTRAINT abc FOREIGN KEY (branchid) REFERENCES branches(branchid);
[/code]


----------



## stg (27. Nov 2013)

Wo und wie du deine Constraint auslesen kannst, hängt so weit ich weiß von der jeweiligen Datenbank ab, ist also nicht direkt SQL-spezifisch.

Der einfachste Weg ist aber sicherlich über ein entsprechendes Tool, wie etwa Oracles SQL-Developer. So etwas gibts ja eigentlich für (nahezu?) jede gängige Datenbanksoftware.


----------



## stg (27. Nov 2013)

stg hat gesagt.:


> Wo und wie du deine Constraint auslesen kannst, hängt so weit ich weiß von der jeweiligen Datenbank ab, ist also nicht direkt SQL-spezifisch.
> 
> Der einfachste Weg ist aber sicherlich über ein entsprechendes Tool, wie etwa Oracles SQL-Developer. So etwas gibts ja eigentlich für (nahezu?) jede gängige Datenbanksoftware.



Für Oracle-DBs schaue zB mal hier:
ALL_INDEXES


----------

