und wie kann man das l�sen, wenn keine ja/nein (checkboxen) sein sollen,
sondern pull-down mit 3 werten ???

mfG,
Marcus

----- Original Message -----
From: "Joachim van de Bruck" <[EMAIL PROTECTED]>
To: "ASP Datenbankprogrammierung" <[EMAIL PROTECTED]>
Sent: Wednesday, June 05, 2002 4:21 PM
Subject: [aspdedatabase] AW: RE: [aspdedatabase] AW: RE: [aspdedatabase] RE:
[aspdedatabase] AW: redaktionstool mit kompletten tabellen�nderungen


> Hallo!
>
> > > > Geht eigentlich auch so etwas wie:
> > > >
> > > > UPDATE ... SET spalte1 = (id IN (...)), spalte2 = (id IN (...)),
> ...
> > > >
> > > > Dann h�tte man immer nur 1 Update.
> > >
> > > Es geht. Hab's gerade probiert. ;-)
> >
> > H�? Schreib mal das SQL aus...
> >
> > Meinst Du das:
> >
> > Update tabelle set spalte1 = (id in (1,2,3,4))
> >
> > Was genau soll das machen?
>
> Das Formular hat 11 Felder mit IDs - gef�llt durch die 440 Checkboxen.
> Also so, wie ich es in meinem L�sungsvorschlag beschrieben habe. Die 11
> Zeichenketten werden direkt in folgendes Statement eingesetzt oder als
> Parameter an eine PROCEDURE �bergeben. Statt der 22 Updates macht man
> aber nur 1 einziges:
>
> UPDATE tabelle SET
>        spalte1 = (id IN (...liste1...)),
>        spalte2 = (id IN (...liste2...)),
>        spalte3 = (id IN (...liste3...)),
>        ...
>        spalte11 = (id IN (...liste11...))
>
> Der Ausdruck "(ID IN (...))" liefert entweder TRUE oder FALSE und kann
> so der Spalte zugewiesen werden.
>
> Beim Update ergeben sich somit f�r jede Zeile (id) v�llig andere Werte,
> je nachdem, ob die aktuelle id eben in der Liste zur Spalte enthalten
> ist oder nicht.
>
> Mein Test:
> Tabelle mit id (Autowert) und spalte1 bis spalte3 (Ja/Nein). Durch
> einfaches Anklicken habe ich 10 Zeilen mit beliebigen Werten gef�llt.
>
> id s1 s22 s3
> 1 Ja Ja Nein
> 2 Nein Nein Nein
> 3 Nein Nein Ja
> 4 Ja Nein Nein
> 5 Nein Ja Ja
> 6 Ja Nein Nein
> 7 Nein Ja Ja
> 8 Ja Nein Nein
> 9 Nein Ja Nein
> 10 Ja Nein Ja
>
> Und dann mein UPDATE:
>
> UPDATE test
>    SET s1 = (id In (1,2,3,4)),
>        s2 = (id In (4,5,6,7)),
>        s3 = (id In (7,8,9,10));
>
> Und heraus kam tats�chlich:
>
> id s1 s2 s3
> 1 Ja Nein Nein
> 2 Ja Nein Nein
> 3 Ja Nein Nein
> 4 Ja Ja Nein
> 5 Nein Ja Nein
> 6 Nein Ja Nein
> 7 Nein Ja Ja
> 8 Nein Nein Ja
> 9 Nein Nein Ja
> 10 Nein Nein Ja
>
> Verbl�ffend einfach, aber vollkommen logisch, oder?
>
> Freundliche Gr��e
> Joachim van de Bruck
>
>
>
> | [aspdedatabase] als [EMAIL PROTECTED] subscribed
> | http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv
> | Sie k�nnen sich unter folgender URL an- und abmelden:
> | http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp
>


| [aspdedatabase] als [email protected] subscribed
| http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp

Antwort per Email an