94451
Jun 22, 2012, updated at 09:17:13 (UTC)
4606
6
0
Komplettes Array in MySQL Datenbank
Hallo ihr,
ich habe ein multidiemensionales Array das ich in eine MySQL Datenbank übernehmen möchte, vorhandene Datensätze möchte ich aber nicht überschreiben!
mein Array sieht ca. so aus!
jetzt möchte ich das Array in eine MySQL Datenbank eintragen!
die Datenbank sieht so aus!
jetzt möchte ich alle Werte eintragen! Als Feld3 wird ein (immergleicher) fester Wert eingetragen! Datum soll das jetzige eingetragen werden!
sollte ein Datensatz (Feld1, Feld2) => (Array[x], Array[x][1]) bereits vorhanden sein, sollte dieser ausgelassen werden!
Das sollte so annähernd Funktionieren!
Was mir aber jetzt fehlt:
1. wie prüfe ich ob Feld1 und Feld2 bereits mit gleichen Daten vorhanden sind? -> nur wenn beide gleich sind darf kein eintrag gemacht werden!
2. ist eine whileschleife sinnvoll? bei 800 Datensätze stell ich mir das sehr rechenintensiv vor!
Danke
Array
(
=> Array
(
=> 345
[1] => 3241
)
[1] => Array
(
=> 234
[1] => 34561
)
[2] => Array
(
=> 1234
[1] => 13245
)
...
[854] => Array
(
=> 345
[1] => 1234
)
)
jetzt möchte ich das Array in eine MySQL Datenbank eintragen!
die Datenbank sieht so aus!
FELD1 | FELD2 | FELD3 | Datum
1234 | 13245 | 500 | 17.06.2012
sollte ein Datensatz (Feld1, Feld2) => (Array[x], Array[x][1]) bereits vorhanden sein, sollte dieser ausgelassen werden!
whileschleife mit Array{
INSERT INTO tabelle (FELD1, FELD2, FELD3, Datum) VALUES (Array[x], Array[x][1], 100, jetzt)
}
Das sollte so annähernd Funktionieren!
Was mir aber jetzt fehlt:
1. wie prüfe ich ob Feld1 und Feld2 bereits mit gleichen Daten vorhanden sind? -> nur wenn beide gleich sind darf kein eintrag gemacht werden!
2. ist eine whileschleife sinnvoll? bei 800 Datensätze stell ich mir das sehr rechenintensiv vor!
Danke
Please also mark the comments that contributed to the solution of the article
Content-Key: 186901
Url: https://administrator.de/contentid/186901
Printed on: April 18, 2024 at 11:04 o'clock
6 Comments
Latest comment
Hallo,
folgendes müsste funktionieren
Davon ab könnte auch Dein obiges INSERT klappen. Wenn feld1 und feld2 als Primary-Key definiert sind dürfte eigentlich kein INSERT mit der gleichen Kombination möglich sein.
Gruß Jörg
folgendes müsste funktionieren
INSERT INTO tabelle (feld1, feld2, feld3, datum)
SELECT Array[x], Array[x][1], 100, jetzt FROM dual
WHERE NOT EXISTS (SELECT * FROM tabelle
WHERE feld1 = Array[x] AND feld2 = Array[x][1]);
Davon ab könnte auch Dein obiges INSERT klappen. Wenn feld1 und feld2 als Primary-Key definiert sind dürfte eigentlich kein INSERT mit der gleichen Kombination möglich sein.
Gruß Jörg