Signatur
Beschreibung
cubrid_error_msg() liefert den Fehlermeldungstext, der beim zuletzt ausgeführten CUBRID-Datenbankaufruf aufgetreten ist. Die Funktion ist nützlich, um nach einem fehlgeschlagenen CUBRID-Aufruf (z. B. cubrid_connect(), cubrid_execute() usw.) eine menschenlesbare Fehlerbeschreibung auszugeben oder zu protokollieren.
Im Gegensatz zu cubrid_error_code(), das den numerischen Fehlercode zurückgibt, liefert cubrid_error_msg() den dazugehörigen Beschreibungstext. Beide Funktionen ergänzen sich daher ideal bei der Fehlerdiagnose und beim Debugging.
Die Funktion arbeitet ohne Parameter und gibt immer den Fehlerstatus des letzten CUBRID-Aufrufs zurück. Falls kein Fehler aufgetreten ist, gibt sie einen leeren String zurück. Es empfiehlt sich, diese Funktion direkt nach einem fehlschlagenden Aufruf zu verwenden, bevor weitere CUBRID-Operationen den internen Fehlerstatus überschreiben.
Rückgabewert
'') zurückgegeben.Beispiele
Verbindungsfehler abfangen und Meldung ausgeben
<?php
$conn = cubrid_connect('localhost', 33000, 'nicht_vorhandene_db', 'root', '');
if (!$conn) {
$fehlercode = cubrid_error_code();
$fehlermeldung = cubrid_error_msg();
echo "Verbindung fehlgeschlagen!" . PHP_EOL;
echo "Fehlercode: " . $fehlercode . PHP_EOL;
echo "Fehlermeldung: " . $fehlermeldung . PHP_EOL;
}
Fehlerprüfung nach einer SQL-Abfrage
<?php
$conn = cubrid_connect('localhost', 33000, 'testdb', 'root', '');
if ($conn) {
$result = cubrid_execute($conn, 'SELECT * FROM nicht_vorhandene_tabelle');
if (!$result) {
echo "SQL-Fehler aufgetreten:" . PHP_EOL;
echo "Code: " . cubrid_error_code() . PHP_EOL;
echo "Meldung: " . cubrid_error_msg() . PHP_EOL;
}
cubrid_disconnect($conn);
}
// Wichtig · Fallstricke
Reihenfolge beachten: Da cubrid_error_msg() immer den Fehler des letzten CUBRID-Aufrufs zurückgibt, sollte die Funktion unmittelbar nach dem fehlerhaften Aufruf aufgerufen werden. Weitere CUBRID-Operationen zwischen dem Fehler und dem Aufruf von cubrid_error_msg() können den Fehlerstatus überschreiben und zu falschen oder leeren Rückgabewerten führen.
Diese Funktion steht nur zur Verfügung, wenn die CUBRID-PHP-Erweiterung (php_cubrid.so bzw. php_cubrid.dll) installiert und aktiviert ist.