Veröffentlicht 11. April 200223 j Hi, ich möchte prüfen ob ein Datensatz schon einmal vorhanden ist, wenn ja dann soll er nicht noch einmal eingefügt werden. Mir stehen PHP.412 und Oracke 8.1.7 zur Verfügung. Das ganze sollte über ein Formular geschehen.
11. April 200223 j Bei sinnvoller Vergabe des Primary Keys muesste Dir das Oracle von ganz alleine melden.
11. April 200223 j Indiziere den Primärschlüssel der Datensätze (ohne Duplikate) in deiner Datenbank (müssten sie eigentlich eh schon sein). Oder indiziere ein anderes Datenlement, nach dem du die Überprüfung auf Vorhandensein durchführen willst.
11. April 200223 j Hallo ,das DB-Design ist nicht von mir. ich will nur mit PHP ein Text in die DB einfügen. gibt es einen SQL Befehl mit dem ich checken kann, ob der Text, den ich einfügen möchte exakt so schon vorhanden ist, und wenn dann soll er mir melden, string schon vorhanden. Bis jetzt fügt er alle sooft wie man möchte ein, also z.b. 4 mal "Hersteller - Compaq", wenn man 4mal auf abschicken gedrückt hat.
11. April 200223 j Wenn du das DB-Design nicht mehr ändern kannst, dann mach doch erst ein einfaches Select auf die Datenbank. Wenn das ResultSet (oder wie es in PHP auch immer heissen mag) Datensätze enthält, dann machst du einfach keinen Insert. Aber einen speziellen SQL-Befehl (der bspw. true/false zurückgibt) kenne ich nicht. Snowghost
11. April 200223 j Stimmt. Kannst nur in PHP selbst ne Abfrage auf die Eingegebenen Werte machen und wenn die schon in der DB sind und du somit nen Treffer hast verwirfst du das einfach . Wie du die Abfrage formulierst ist deine Sache da gibt es bestimmt mehr als 2 Möglichkeiten (kenn mich in PHP nicht aus aber wenn due den Namen in einer Variblen hast lass ich der DB nach dem suchen und in ein Resultset oder Variable schrieben... nur noch vergleichen oder checken ob die Variable leer ist und dann entsprechend handeln ....(verwerfen oder insert durhcführen ...)
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.