Hallo Stefan! Eigentlich ein unfug das ganze. Auf der einen Seite willst du verhindern das ein User mehrfach abstimmen kann und speicherst daher seinen Namen. Auf der anderen Seite gibst du die M�glichkeit Anonym abzustimmen. Doch gerade diese User k�nnen doch dann mehrfach abstimmen!!!
Also warum gehst du nicht einfach her und speicherst entweder jeden Namen oder gar keinen. Au�erdem w�rde ich einfach eine Tabelle anlegen, in der das Ergebnis der Abstimmung im Klartext vorliegt. Etwa so: AbstimmungsID, UserID, Ergebnis, Datum/Uhrzeit, IP Und damit du zum ergebnis kommst brauchst du dann nur ein Select Count() machen. Dies w�re die einfachste M�glichkeit. Du brauchst dann auch nicht bei jedem User die UserID zu speichern sondern �bergibst einfach ein Cookie, welches am Rechner des Users gespeichert wird und vermeidest dadurch, das der User ein 2. Mal abstimmt. Mit freundlichen Gr��en Roland -----Urspr�ngliche Nachricht----- Von: Mayer, Stefan [mailto:[EMAIL PROTECTED]] Gesendet: Donnerstag, 27. Juni 2002 08:14 An: ASP Datenbankprogrammierung Betreff: [aspdedatabase] AW: Wenn-Dann in SQL-String Nun, da das Design noch nicht abgeschlossen ist, frag ich mal, wie man meine Aufgabenstellung realisieren k�nnte: Ich habe eine Tabelle, wo ich meine 250 User drinnen gespeichert habe. Die User d�rfen sich an Abstimmungen beteiligen. Ich speichere zur jeder abgegebenen Stimme mit dazu, wer es war, um zu verhindern, da� jemand mehrfach abstimmt. ABER: Ich will jedem die M�glichkeit lassen, "anonym" abzustimmen. Im Feld "Art" wird vermerkt, ob die Abstimmung "offen" war (-->2) oder "geheim" (-->1) In der Auswertung will ich zu jeder abgegebenen Stimme den Usernamen dazu ausgegeben haben - es sei denn, die Abstimmung war "anonymisiert". -----Urspr�ngliche Nachricht----- Von: Joachim van de Bruck [mailto:[EMAIL PROTECTED]] Gesendet: Donnerstag, 27. Juni 2002 08:05 An: ASP Datenbankprogrammierung Betreff: [aspdedatabase] AW: Wenn-Dann in SQL-String Hallo! > Ich will in einer Sicht/Abfrage 2 Tabellen zusammenh�ngen. Aus Tabelle 1 > nehme ich die User (UID ist der Schl�ssel), aus Tabelle 2 die > Abstimmungsergebnisse eines Votings. Hier hei�t der Schl�ssel "U". > > W�re an sich ja kein Problem, wenn es in Votings nicht zwei > Ausnahmef�lle g�be: N�mlich das Feld "Art", das Einfluss haben soll, und > zwar diesen: > > Art < 2 --> User.UID = Votings.Art > Art = 2 --> User.UID = Votings.UID So etwas sollte man beim Design vermeiden: Einen JOIN abh�ngig von anderen Spalten - da kann die Abfrage ja gar nicht mehr vorkompiliert werden. Ich w�rde auf jeden Fall das Design �ndern. Ansonsten machst Du eben einen JOIN auf eine zweite Abfrage: SELECT Art AS UID, ... FROM Votings WHERE Art < 2 UNION SELECT UID, ... FROM Votings WHERE Art = 2 Diese View verwendest Du dann in der ersten Abfrage: SELECT ... FROM User AS A INNER JOIN viewVotings AS B ON A.UID = B.UID 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 | [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
