sqlite INSERT nur wenn Eintrag in Tabelle noch nicht existiert
Verfasst: Sonntag 5. März 2023, 18:05
Hallo allerseits,
ich befasse mich erstmals mit der Verwendung von Datenbanken - konkret sqlite3 - in Python. Sorry, wenn die Frage zu banal sein sollte...
Ich möchte den Inhalt einer verschachtelten Liste in eine Tabelle einer sqlite3-DB importieren. Format der Listen:
[('bla', 'blubb', 'IP-Adresse', 'Kommentar'), ('bla', 'blubb', 'nächste IP-Adresse', 'Kommentar'),...]
Die Felder bla und blubb brauche ich nicht in der Datenbank. Die IP-Adresse soll nur einmal in der Datenbank vorhanden sein. Das heißt, wenn die IP-Adresse schon mal in die DB geschrieben wurde, soll sie nicht mehr importiert werden.
Aktuell denke ich darüber nach, die Tabelle auszulesen (das Feld mit der IP-Adresse genügt ja), und dann jeden zu importierenden Eintrag gegen die Liste mit den ausgelesenen Adressen zu prüfen. Ist er nicht enthalten, werden IP-Adresse und Kommentar in die DB geschrieben.
Geht das vielleicht auch einfacher?
Danke.
VG mhard666
ich befasse mich erstmals mit der Verwendung von Datenbanken - konkret sqlite3 - in Python. Sorry, wenn die Frage zu banal sein sollte...
Ich möchte den Inhalt einer verschachtelten Liste in eine Tabelle einer sqlite3-DB importieren. Format der Listen:
[('bla', 'blubb', 'IP-Adresse', 'Kommentar'), ('bla', 'blubb', 'nächste IP-Adresse', 'Kommentar'),...]
Die Felder bla und blubb brauche ich nicht in der Datenbank. Die IP-Adresse soll nur einmal in der Datenbank vorhanden sein. Das heißt, wenn die IP-Adresse schon mal in die DB geschrieben wurde, soll sie nicht mehr importiert werden.
Aktuell denke ich darüber nach, die Tabelle auszulesen (das Feld mit der IP-Adresse genügt ja), und dann jeden zu importierenden Eintrag gegen die Liste mit den ausgelesenen Adressen zu prüfen. Ist er nicht enthalten, werden IP-Adresse und Kommentar in die DB geschrieben.
Geht das vielleicht auch einfacher?
Danke.
VG mhard666