Veröffentlicht 29. Oktober 20195 j Hallo, ich Hoffe mal hier richtig zu sein. Ich habe in einer Datenbank mehrere Tabellen, wobei in einer User mit IP-Adressen eingetragen werden. Nun möchte ich das automatisch beim eintragen einer neuen IP eine andere Tabelle auf das vorhandensein dieser IP durchsucht wird und falls die IP dort vorhanden ist, ein Flag gesetzt wird. Ich hoffe jemand hat dazu eine Idee. Danke schonmal im vorraus.
29. Oktober 20195 j Möchtest Du es direkt über die Datenbank lösen? Dann kommt es natürlich darauf an welche Datenbank Du nutzt. Unterstützt deine Datenbank SQL, sollte es mit einem einfachen Update Statement mit Where Klausel funktionieren. https://www.w3schools.com/sql/sql_update.asp
29. Oktober 20195 j Ich würde mal ganz einfach denken, mache erst ein SELECT Statement auf die Tabelle und anschließend ein Update Statement auf die zweite Tabelle. Bzw. schau dir mal Joins bei SQL Befehlen an, damit kannst du Abfragen auf mehrere Tabellen machen. Das ganze könnte man zwar auch eleganter lösen, aber elegant ist nicht immer besser^^. Wichtig ist aber, zu beachten, das dein Programm immer abbrechen kann. Deswegen musst du es so programmieren, dass du nie einen Schiefstand zwischen den Tabellen bekommen kannst. Ein SELECT Statement ändert keine Daten, aber wenn du mehrere Datensätze / Tabellen editierst (Insert / Update) welche Abhängigkeiten haben, müssen diese Änderungen immer in der gleichen Datenbanktransaktion durchgeführt werden, schau dir hierfür mal COMMITs an. Dadurch kannst du verhindern, dass im Fehlerfall nur eine von beiden Tabellen editiert wird :-). vg, smtie
29. Oktober 20195 j Sollte jede halbwegs moderne DB per Insert-Trigger können. Den Insert Trigger muss man halt selbst schreiben.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.