jannik2018
Goto Top

MySQL CSV Import

Hallo Zusammen,

hat jemand von euch eine Iddee wie ich verhindern kann das bei mehrfachen ausführen des imports doppelte einträge erstellt werden


Import Script

load data local infile '/home/a223/public_html/cdsc/csvtest4.csv'
into table cwd_user
fields terminated by ','
optionally enclosed by '"'
escaped by '"'
lines terminated by '\n'
(user_name, first_name, last_name, email_address);

Content-ID: 634210

Url: https://administrator.de/contentid/634210

Ausgedruckt am: 05.11.2024 um 00:11 Uhr

akretschmer
akretschmer 21.12.2020 um 19:40:00 Uhr
Goto Top
einfach - es nur einmal machen.
manuel-r
manuel-r 21.12.2020 um 20:28:42 Uhr
Goto Top
Hallo

wie ich verhindern kann das bei mehrfachen ausführen des imports doppelte einträge erstellt werden

Du könntest einen Trigger auf Before Insert legen und darin aus den Nutzdaten einen Hash generieren. Diesen Hash schreibst du in eine Spalte die unique ist. Wenn bei einem erneuten Import dann ein Insert gemacht werden soll der die gleichen Daten und damit auch einen schon vorhandenen Hashwert hat wird der Import bzw. das Insert mit einer Fehlermeldung abgebrochen für diese Zeile.
Eventuell kannst du es auch ohne den Hash und den Trigger machen, da eMail-Adressen eigentlich ja auch nur einmal existieren. Zumindest wenn es keine zwei User mit der gleichen Adresse gibt. Dann setzt du einfach die Spalte email_address auf unique.

Manuel