![]() |
Datenbank: MS SQL Server • Version: 2000 • Zugriff über: ADO.NET
SET PARSEONLY bei SQL Server 2000 auswerten
Hallo,
bei dem SQL-Server gibt es die Option SET PARSEONLY. Damit wird das Script nicht ausgeführt, sondern nur überprüft. Wie erkenne ich nun, ob ein Fehler in dem SQL-Statement ist. Wie lauten die Rückgabewerte, wenn alles in Ordnung, bzw. ein Fehler aufgetreten ist? Danke schon mal im Vorraus für eure Hilfe. André |
Re: SET PARSEONLY bei SQL Server 2000 auswerten
*push*
So ich zieh das Thema mal wieder hoch. Hat noch keiner die Option "SET PARSEONLY" beim SQL-Server 2000 benutzt? Oder kennt ihr eine andere Art Scripts zu überpüfen, ob sie korrekt sind? André |
Re: SET PARSEONLY bei SQL Server 2000 auswerten
Hallo Andre,
also so wie ich es verstanden habe, aendert sich fuer dich (fast) nichts. Du fuehrst das Query aus, aber der Server parst es nur und gibt dir dann wie immer Exceptions oder was auch immer zurueck. Syntaktische Fehler kannst du somit rausfinden, aber andere Fehler (wie z.B. eine Constraint violation) nicht (er parst ja schliesslich nur). Ich hab hier allerdings keinen SQL-Server, bei dem ich das austesten koennte. Die Logik sagt mir aber, dass er dir bei Syntaxfehlern immer noch Exceptions um die Ohren wirft ;) Greetz alcaeus |
Re: SET PARSEONLY bei SQL Server 2000 auswerten
Zitat:
Am Montag beschäftige ich mich dann wieder intensiver damit, jezt ist WE :-) |
Re: SET PARSEONLY bei SQL Server 2000 auswerten
Zitat:
Und zu den Exceptions: ich wuerde die sowieso immer abfangen und selbst behandeln ;) Greetz alcaeus |
Re: SET PARSEONLY bei SQL Server 2000 auswerten
Zitat:
Zitat:
André |
Re: SET PARSEONLY bei SQL Server 2000 auswerten
Das Errors-Objekt einer ADO-Connection enthält etwaige Fehler des zugehörigen Resultsets. Eine Anfrage könnte mehrere Resultsets zurückliefern (select * from a; select * from b).
Du musst durch alle Resultsets durchiterieren und dann das Errors-Objekt abfragen. Da bei SET PARSEONLY vermutlich keine Resultsets zurückgeliefert werden, tritt hier ein sonderfall ein. Beim Aufruf von ADOConnection.Execute gibt es eine option, sodass ADO eben nicht meckert, wenn nix zurückkommt. Check das mal. |
Re: SET PARSEONLY bei SQL Server 2000 auswerten
Hi Leute,
das Problem hat sich erledigt. Bei Fehlern in der Syntax wird ein Fehler an den Client gesendet, den man mit der Klasse SqlException Zitat:
Das war alles. Beim nächstem mal sollte ich die Hilfe doch noch intensiver lesen :wall: Danke an alle, die hier mitgeholfen haben :dp: André |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz