Hallo,
ich habe ein Problem, dessen Lösung ich auch nach langem Suchen nicht gefunden habe. In meinem Java-Programm habe ich u.a. folgende Spalten:
name | zahlen1 | zahlen2 | ...
Unter "Name" habe ich mittlerweile tausende Einträge. Nun will ich eine neue Spalte, z.B. "zahlen5" einfügen, und diese gleich mit Werten füllen. Ich habe das bisher aus Java so gemacht, dass ich jedesmal folgendes ausgeführt habe:
UPDATE tabelle SET zahlen5 = x WHERE name = y
Dies mache ich dann in einer Schleife für jeden Namen y. Das Problem ist, dies dauert viel zu lange. Für meine 10000 Einträge brauche ich in etwa 5 Minuten.
Ich würde das gerne beschleunigen, in dem ich nur einen Befehl an meine SQL-Datenbank sende. Dieser sollte ungefähr so aussehen:
ALTER TABLE table ADD COLUMN zahlen5 VALUES (x1, x2, x3, x4, x5,...)
oder
INSERT INTO table (zahlen5) VALUES (x1, x2, x3, x4, x5,..)
Dann schreibe ich die Inhalte mit einem Befehl auf einmal. Hat jemand eine Idee, wie ich das mach kann, ohne in einer Schleife iterieren zu müssen?
ich habe ein Problem, dessen Lösung ich auch nach langem Suchen nicht gefunden habe. In meinem Java-Programm habe ich u.a. folgende Spalten:
name | zahlen1 | zahlen2 | ...
Unter "Name" habe ich mittlerweile tausende Einträge. Nun will ich eine neue Spalte, z.B. "zahlen5" einfügen, und diese gleich mit Werten füllen. Ich habe das bisher aus Java so gemacht, dass ich jedesmal folgendes ausgeführt habe:
UPDATE tabelle SET zahlen5 = x WHERE name = y
Dies mache ich dann in einer Schleife für jeden Namen y. Das Problem ist, dies dauert viel zu lange. Für meine 10000 Einträge brauche ich in etwa 5 Minuten.
Ich würde das gerne beschleunigen, in dem ich nur einen Befehl an meine SQL-Datenbank sende. Dieser sollte ungefähr so aussehen:
ALTER TABLE table ADD COLUMN zahlen5 VALUES (x1, x2, x3, x4, x5,...)
oder
INSERT INTO table (zahlen5) VALUES (x1, x2, x3, x4, x5,..)
Dann schreibe ich die Inhalte mit einem Befehl auf einmal. Hat jemand eine Idee, wie ich das mach kann, ohne in einer Schleife iterieren zu müssen?