Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

OCIexecute Warning anfangen - Verletzung PK in DB

Hallo zusammen,

ich bastle eine Webanwendung mit PHP und als Datenbak nutze ich Oracle. Jetzt können Nutzer (mit Admin-Recht) auch neue Benutzer anlegen. In der DB ist nun der Username PK. Bei einem commit wird beim Anlegen eines schon bestehenden Usernamen aber kein Error zurückgeben, den ich mit ocierror() abfangen kann, sondern nur ein Warning:

Code:                   In Zwischenablage kopieren (nur IE)
1">

Gibt es eine einfache Möglichkeit, das abzufangen, ohne vorher wieder durch ein select-Statement gucken zu müssen, ob der User schon existiert?

slurpee
Hier gehts zum Orginal Eintrag "OCIexecute Warning anfangen - Verletzung PK in DB" im Forum

Antworten

Also - ein SELECT Statement ist immer gut.

Zu deiner Warning -ehm...
Check doch einfach, ob die FehlerNUMMER - oder auch der Fehlertext auf diese Warnung
mit einer if.

Hier ein Beispiel (nicht sehr elegant:):
Code:                   In Zwischenablage kopieren (nur IE)
2">




2.

Und hat's geklappt?


????


3.

Sorry hatte viel zu tun. Hatte das Problem dass gelöst, nachdem ich nochmal GANZ genau das OCIError Manual gelesen hab. OCIExecute gibt keine Fehler zurück, wenn das Execute nicht funktioniert hat, muss man den Fehler bei OCIParse suchen. Da gibt OCIError dann nen Array mit der ORA-FEhlernummer, der Meldung usw zurück. Hat also dann geklappt. Man muss nur das Brett vorm Kopf beseitigen, dann klappt das lesen auch ;)


Hier gehts zum Orginal Eintrag "OCIexecute Warning anfangen - Verletzung PK in DB" im Forum
 
phpforum.de | Impressum | Handy Bundles