Ich habe eine sehr einfache INSERT-Anweisung ausgeführt von einem PHP-Skript auf einem Linux-Apache-Webserver ausgeführt. Ich kann die Abfrage innerhalb von SQL Management Studio ausführen und es läuft normalerweise auch gut von PHP. Hin und wieder bekomme ich jedoch eine Fehlermeldung von meinem PHP-Skript, dass die Abfrage fehlgeschlagen ist und die mssql_get_last_message() - Funktion 'Die Anweisung wurde beendet' zurückgibt.Was bewirkt, dass SQL Server die Nachricht 'Die Anweisung wurde beendet' zurückgibt?
Welche Quellen können dazu führen, dass diese Nachricht von SQL Server zurückgegeben wird?
Also, mit Ihrem Beispiel, wenn ich meine 'Die Anweisung wurde beendet' Nachricht sollte ich in der Lage sein, die Abfrage, die Sie zur Verfügung gestellt, um den Fehlercode erhalten? –
Nevermind, klingt Ihre Lösung in der Theorie gut. Die Variable @@ ERROR wird jedoch überschrieben, wenn eine andere Abfrage die Datenbank trifft, bevor Sie sie abfragen können. Auf einem ausgelasteten Server ist dies sehr wahrscheinlich. –
Das Problem, das Sie haben, ist ein bekanntes Problem mit dem mssql-Treiber anscheinend. Sehen Sie sich http://php.net/manual/en/function.mssql-get-last-message.php an, besonders die Kommentare unten.Die Leute haben lange mit diesem Problem gekämpft. – Gary