Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi T-SQL - UPDATE UND CASE (https://www.delphipraxis.net/56230-t-sql-update-und-case.html)

robroy85 2. Nov 2005 15:40

Datenbank: MSSQL 7.0 • Zugriff über: STORED PROCEDURES

T-SQL - UPDATE UND CASE
 
Hallo Liebe Community!

Ich möchte gerne ein Update eines SQL-Datensatzes ausführen und anhand einer Bedingung bestimmen in welches Feld der Tabelle die Information geschrieben werden soll! Ich greife über Stored Procedures auf MSSQL 7.0 zu und bin also dementsprechend eingeschränkt!
SQL-Code:
UPDATE [TABELLE]
SET
CASE
   WHEN [Bedingung1] THEN FELD1 = Information
   WHEN [Bedingung2] THEN FELD2 = Information
   WHEN [Bedingung3] THEN FELD3 = Information
   WHEN [Bedingung4] THEN FELD4 = Information
WHERE ...
So sieht meine Idee aus, leider gibts dabei einen Fehler "in der Umgebung von CASE"

Hat Jemand ne idee dazu, bwz eine Alternative?

robroy85 3. Nov 2005 08:20

Re: T-SQL - UPDATE UND CASE
 
hat denn wirklich niemand ne Idee oder habe ich mich total unverständlich ausgedrückt?

schönen gruß, robert

marabu 3. Nov 2005 10:28

Re: T-SQL - UPDATE UND CASE
 
Hallo Robert,

du wirst die Bedingung außerhalb deines UPDATE Statements auswerten müssen.

SQL-Code:
IF bedingung1 
  UPDATE tbl SET fld1 = @info
ELSE IF bedingung2
  UPDATE tbl SET fld2 = @info
ELSE IF bedingung3
  ...
CASE liefert einen bedingten Ausdruck, der Wert-Ausdrücke, aber keine Spaltennamen direkt ersetzen kann.

Grüße vom marabu


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:39 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz