[Ant] Datenbank leeren, alle Tabellen löschen (Oracle)

Wie man manuell alle Tabellen innerhalb einer Oracle Datenbank löschen kann, habe ich bereits vor einiger Zeit dargestellt. Damit ein Entwickler dies nicht immerzu manuell durchführen muss, habe ich dazu ein Ant-Target geschrieben, welches die entsprechende Aufgabe automatisch durchführt. Natürlich mit einer entsprechenden Sicherheitsabfrage!

Mit Hilfe des Ant-Property allowed.clean.db.name kann zusätzlich angegeben werden, das nur eine bestimmte DB gereinigt werden darf, dies verhindert unachtsames Löschen einer Produktivumgebung ;-). Zusätzlich muss jede Ausführung des Ant-Targets explizit mit „yes“ bestätigt werden, dazu erscheint eine entsprechende Dialogbox beim Start.

Die Variablen die mit oracle. beginnen, müssen entsprechend gesetzt/ersetzt werden. Dies muss also an eure Konfiguration angepasst werden. Ansonsten ist nicht viel zu beachten :-).

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
			<input type="text" />
 
 
 
			Task durch User abgebrochen!
 
 
 
 
	 				Begin
	 					for c in (select table_name from user_tables) loop
	 						execute immediate ('drop table '||c.table_name||' cascade constraints');
	 					end loop;
	 				End;

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert