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
[OT]Oracle script ausführen.
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.
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.
- suntsu
- Beiträge: 2947
- Registriert: 03.05.2002 10:45:12
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: schweiz
-
Kontaktdaten:
ahh.
jo ich habe ein script in der art:
Und ich war mir nicht sicher ob das geht wenn das commit nur am schluss ist.
gruss
manuel
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;
gruss
manuel
sollte gehen.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
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.
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...
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...
Programmer: A biological machine designed to convert caffeine into code.
xmpp:bert@debianforum.de
xmpp:bert@debianforum.de