Sponsor-Board.de
Antwort schreiben  Thema schreiben 

LOAD DATA LOCAL INFILE - MySQL

Verfasser Nachricht

Beiträge: 3.413
Bewertung: 33
Registriert seit: Oct 2010
Status: offline


Beitrag: #1
LOAD DATA LOCAL INFILE - MySQL

Guten Abend,
kann man mit der Funktion von MySQL "LOAD DATA LOCAL INFILE" (wenn ich ne .csv Datei damit in die DB schreibe) irgendwie auf doppelte Einträge überprüfen (z.B. anhand von nem Namen) ?
Und diese dann eventuell überspringen und am Ende ausgeben ?
Gibts Alternativen ?

Freue mich über jede hilfreiche Antwort!

mfg Aaron


Portfolio: [Link: Registrierung erforderlich]

Projekte
[Link: Registrierung erforderlich]
[Link: Registrierung erforderlich]

24.11.2013 20:41
 
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren

Beiträge: 1.306
Bewertung: 6
Registriert seit: May 2009
Status: offline


Beitrag: #2
RE: LOAD DATA LOCAL INFILE - MySQL

Schau dir dort: [Link: Registrierung erforderlich]
den dritten Punkt genauer an, das sollte deine Frage denke ich gut beantworten und auch erklären Smile

Ist zwar etwas PHP-lastig, aber denke, das könntest du mit wenigen Handgriffen selbst lösen.

Dieser Beitrag wurde zuletzt bearbeitet: 25.11.2013 08:10 von Dennis.

25.11.2013 08:10
 
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren

Beiträge: 3.413
Bewertung: 33
Registriert seit: Oct 2010
Status: offline


Beitrag: #3
RE: LOAD DATA LOCAL INFILE - MySQL

das wird aber nicht auf doppelte Einträge eingegangen - wie man die Funktion verwendet weiß ich ja

Wenn ich die Datei vorher auf doppelte Einträge prüfe, würde das ewig dauern und nen Timeout geben, da es mehrere tausend Datensätze sind


Portfolio: [Link: Registrierung erforderlich]

Projekte
[Link: Registrierung erforderlich]
[Link: Registrierung erforderlich]

25.11.2013 09:36
 
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren

Beiträge: 1.306
Bewertung: 6
Registriert seit: May 2009
Status: offline


Beitrag: #4
RE: LOAD DATA LOCAL INFILE - MySQL

Der direkte Abgleich der Datensätze ist meines Erachtens nach die einzige Möglichkeit.
Du könntest evtl. aus der Datenbank einen Export als CSV durchführen und abzugleichen, falls es da Funktionen für gibt, aber um einen Abgleich kommt man nicht drumherum.

25.11.2013 10:31
 
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren

Beiträge: 844
Bewertung: 0
Registriert seit: Jun 2011
Status: offline


Beitrag: #5
RE: LOAD DATA LOCAL INFILE - MySQL

Am besten is sowas über die DB direkt zu machen.
Wenn Du nach dem Primary Key gehst oder eine Spalte die Unique is, kannste eh keine doppelten DS einfügen.
Ansonsten könntest Du einen Insert-Trigger auf die Tabelle setzen der nachkuckt ob der DS schon vorhanden ist und wenn nicht das Insert ausführt.


Alcazar
(nach Diktat spazierengegangen)

25.11.2013 20:26
 
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren

Beiträge: 3.413
Bewertung: 33
Registriert seit: Oct 2010
Status: offline


Beitrag: #6
RE: LOAD DATA LOCAL INFILE - MySQL

der Kunde möchte, dass er ne Meldung bekommt, wenn was doppelt ist, nicht das es einfach nicht reingeschrieben wird

ich möchte ja die Datei direkt reinladen, wenn ich das mit nem Insert machen aus zb nem Array, dauert das ewig und es gibt nen Timeout, wie schon geschrieben mehrere tausend Einträge ...

das ist aber so wohl in der Funktion nicht möglich wie ich mittlerweile herausgefunden habe - daher schau ich vorher, ob ich die Datei iwie recht performant durchsuchen kann

danke für die Vorschläge


Portfolio: [Link: Registrierung erforderlich]

Projekte
[Link: Registrierung erforderlich]
[Link: Registrierung erforderlich]

25.11.2013 20:54
 
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren

Beiträge: 844
Bewertung: 0
Registriert seit: Jun 2011
Status: offline


Beitrag: #7
RE: LOAD DATA LOCAL INFILE - MySQL

Weiß nich wie das bei MySQL is, beim SQL-Server z. B. kannste da ne Meldung ausgeben lassen, das z. B. der DS schon vorhanden is und nich neu eingefügt wird.

Alternative wäre halt die Datei schon vor der DB zu sortieren und ggf. doppelte zu entfernen, kann aber nich sagen wie das geht. Habe da zu wenig Ahnung von PHP, Perl & Co. :'(


Alcazar
(nach Diktat spazierengegangen)

26.11.2013 17:46
 
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Antwort schreiben  Thema schreiben 

Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  PHP Formular in Mysql spela 1 1.884 19.06.2018 11:09
Letzter Beitrag: Jerr0w
Question PHP+MySQL hilfe benötigt z0ckyZockt 4 1.711 13.07.2016 17:03
Letzter Beitrag: push
  bilder in MySQL Speichern Garfield200508 3 2.294 17.03.2016 06:47
Letzter Beitrag: kRONOS
  Psychokiller, MySQL Magnon.eu 0 1.478 04.12.2015 17:37
Letzter Beitrag: Magnon.eu
  LOAD DATA INFILE funktioniert nicht criox 0 1.314 24.11.2015 11:31
Letzter Beitrag: criox

 Druckversion anzeigen
 Thema einem Freund senden
 Thema abonnieren
 Thema zu den Favoriten hinzufügen

Sponsor-Board.de

Community
Über uns
Partner
Powered by Mybb: Copyright 2002-2024 by MyBB Group - Deutsche-Übersetzung von Mybb.de
 
© 2007-2024 Sponsor-Board.de - Hosted by OVH

Willkommen auf SB!   Sie benötigen ein Sponsoring?   1. Anmelden   2. Sponsoring-Anfrage erstellen   3. Nachrichten von Sponsoren erhalten   Kostenlos!   Jetzt registrieren