Daten einfügen, keine Duplikate
Verfasst: Montag 8. Februar 2010, 11:24
Hallo!
Ich habe folgende DB:
Project Shot Image
HS01 01 01A_001.jpg
HS01 01 01A_009.jpg
HS01 02 02A_001.jpg
HS02 01 01A_043.jpg
HS02 09 09A_010.jpg
HS03 15 15B_033.jpg
Nun müssen ständig in die DB neue Daten geschrieben werden, wobei eine vollständige Reihe nicht nochmal vorkommen darf. Also z.B.
HS01 01 01A_001.jpg darf nicht nochmals eingefügt werden,
HS01 01 01A_002.jpg aber schon.
Jetzt habe ich mehrere Wege gelesen, dies zu vermeiden.
Welcher ist aber der sinnvollste?
1) Einen Primärschlüssel UNIQUE machen (z.B. HS01_01_01A_001.jpg)?
2) Über INSERT INTO IF NOT EXIST?
3) Über ALTER TABLE
4) ...
Wobei die Dateneingabe natürlich weiterlaufen soll, nachdem ein Duplikat gefunden wurde.
Was benutzt man in solchen Fällen am Besten? Ich bin etwas verwirrt, da es mehrere Möglichkeiten zu geben scheint.
Ich benutze sqlite.
Lg
Ich habe folgende DB:
Project Shot Image
HS01 01 01A_001.jpg
HS01 01 01A_009.jpg
HS01 02 02A_001.jpg
HS02 01 01A_043.jpg
HS02 09 09A_010.jpg
HS03 15 15B_033.jpg
Nun müssen ständig in die DB neue Daten geschrieben werden, wobei eine vollständige Reihe nicht nochmal vorkommen darf. Also z.B.
HS01 01 01A_001.jpg darf nicht nochmals eingefügt werden,
HS01 01 01A_002.jpg aber schon.
Jetzt habe ich mehrere Wege gelesen, dies zu vermeiden.
Welcher ist aber der sinnvollste?
1) Einen Primärschlüssel UNIQUE machen (z.B. HS01_01_01A_001.jpg)?
2) Über INSERT INTO IF NOT EXIST?
3) Über ALTER TABLE
4) ...
Wobei die Dateneingabe natürlich weiterlaufen soll, nachdem ein Duplikat gefunden wurde.
Was benutzt man in solchen Fällen am Besten? Ich bin etwas verwirrt, da es mehrere Möglichkeiten zu geben scheint.
Ich benutze sqlite.
Lg