Zum Inhalt springen

Oracle 9i - Delete = TEMP?


moo_kuh

Empfohlene Beiträge

Hallo Kollegen,

da ich leider nicht der Datenbankspezialist bin, muss ich einmal euere Dienste in Anspruch nehmen.

Habe letzte Woche einen Kollegen (unseren DBA) vertreten, und natürlich ist in dieser Zeit eine Oracle DB abgeraucht und ich musste restoren.

War alles kein Problem und die DB kam wieder hoch. Aufgrund des Restores musste ich Einträge aus einer Tabelle löschen.

Also ich mit sqlplus "/ as sysdba" angemeldet und einen "Delete from SCHEMA.TAB WHERE XX = 'XX' " gemacht. Er hat dann so ca. 1 Minute bei dem Statement gehangen, und dann brach er mit der Fehler ab das er keinen TEMP Tablespace findet.

Also ich nachgeschaut, stimmt es gibt einen TEMP Tablespace, aber es hängen keine Datafiles / Tempfiles darunter.. Also habe ich eins angelegt und schon ging der Delete durch, danach noch einen Commit und das Thema war durch...

Einen UNDO Tablespace gab es wo er ja eigentlich seine Änderungen vermerken sollte bis ich einen "commit" oder einen "rollback" absetze. Der UNDO Tablespace wird auch genutzt...

Nun frage ich mich:

1. Für was braucht Oracle bei einem Delete Statement einen TEMP Tablespace, wenn er die Änderungen ja im UNDO sichert?

2. Wo ist der Unterschied zwischen einen TEMP-File und einen DATA-File, denn ich kann ja beides unter einen Temporary Tablespace hängen :confused:

Wäre klasse wenn ihr mir meine 2 Fragen beantworten könntet ;)

Danke schonmal

Link zu diesem Kommentar
Auf anderen Seiten teilen

1. Auch beim DELETE können Sortieroperationen durchgeführt werden. Reicht der Platz im Memory dafür nicht aus, muss in den TEMP-Tablespace geschrieben werden. Mit Transaktionssicherheit (UNDO) hat das nichts zu tun.

2. Tempfiles werden zum einen schneller als Datafiles angelegt, da bei der Erstellung nur der Header und der letzte Block geschrieben werden. Zum anderen können Tempfiles gedroppt werden, ohne dass wie bei Datafiles der gesamte Tablespace weggeschmissen werden muss.

Link zu diesem Kommentar
Auf anderen Seiten teilen

2. Tempfiles werden zum einen schneller als Datafiles angelegt, da bei der Erstellung nur der Header und der letzte Block geschrieben werden. Zum anderen können Tempfiles gedroppt werden, ohne dass wie bei Datafiles der gesamte Tablespace weggeschmissen werden muss.

Hallo,

wie kann diese "TEMP Files" unter einen Temporary Tablespace hängen?

Im OEM kann ich nur ein Datafile angeben... wie funktioniert das mit den TEMP Files bzw. wird auch in SQL Statements immer von Datafiles gesprochen...

Danke :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...