Seite 1 von 1

[OT]Oracle script ausführen.

Verfasst: 06.06.2003 07:41:12
von suntsu
Tag

Ich habe ein paar sql-Anweisungen, die möchte ich in ein script packen. Muss ich da zwischen jeder Anweisung ein "commit;" haben, oder genügt das wenn das am ende des Files ist?

gruss
manuel

Verfasst: 06.06.2003 08:48:08
von abi
kommt drauf an wie die Transaktion sein soll.
Willst du eine große machen, oder sie in mehrere Teile teilen ?
commit kann man setzen wo man will.

das kann eine popelfunktion ala:

update .... where bl=bla;
commit;

oder der import einer 300 MB Großen .sql file sein und am Ende einfach nur ein commit. Geschrieben wirds halt erst nach dem der commitbefehl abgesetzt wurde.

Verfasst: 06.06.2003 08:52:29
von suntsu
ahh.

jo ich habe ein script in der art:

Code: Alles auswählen

update tabelle set spalte  = 1;
update tabelle set spalte  = 2;
update tabelle set spalte  = 3;
commit;
Und ich war mir nicht sicher ob das geht wenn das commit nur am schluss ist.

gruss
manuel

Verfasst: 06.06.2003 08:54:50
von abi
suntsu hat geschrieben:ahh.

jo ich habe ein script in der art:

Code: Alles auswählen

update tabelle set spalte  = 1;
update tabelle set spalte  = 2;
update tabelle set spalte  = 3;
commit;

Und ich war mir nicht sicher ob das geht wenn das commit nur am schluss ist.

gruss
manuel
sollte gehen.
Stell dir nur mal vor du hast nen dumb der über 30 000 Datensatzimporte beinhaltet und es müsste nach jedem INSERT Befehl ein "commit;" folgen.

Verfasst: 06.06.2003 09:01:09
von suntsu
jo iss schon wahr.

Aba Oracle ist ein bisschen komisch. Ich hab bis jetzt mit mySQL und MS-SQL gearbeitet, aba Oracle ist eine andere Welt >> Zum Glück nicht meine :)

Verfasst: 06.06.2003 09:24:31
von Bert
was ist komisch an Oracle? Ich kenn allerdings nichts anderes...
Wenn Du allerdings 30 000 Datensätze in einer Transaction einfahren willst, kann es zu Problemen mit den temporären Tablespces kommen (snapshot too old). Kommt ganz auf die Datenmenge an. Und was sonst noch so gerade auf dem temp. Tablespace läuft...

Verfasst: 06.06.2003 09:34:20
von suntsu
sind nur 400 ;)