Hallo! > So, jetzt hab ich die Fehlerbehandlung ausgeschalten und es funktioniert > vorl�ufig wunderbar. > Ich mach jetzt auch Wochenende und w�nsch Euch ein sch�nes.
Jutta hat recht: "SELECT TOP 3 ... FROM ... WHERE ... ORDER BY ..." liefert nicht unbedingt genau 3 Datens�tze. Es liefert weniger als 3 Datens�tze, wenn weniger der Bedingung "WHERE ..." entsprichen und es liefert mehr als 3 Datens�tze wenn aufgrund von "WHERE ... ORDER BY ..." die drei nicht eindeutig bestimmt werden k�nnen. Das tritt dann auf, wenn das Sortierkriterium nicht eindeutig ist. Mein Vorschlag: SELECT TOP 3 * FROM Banners WHERE ist < soll ORDER BY (soll - ist) DESC, id Es werden grunds�tzlich nur Banner selektiert, bei denen die Zahl der Views (das hei�t heute "page impressions" bzw. "pi" ;-) ) kleiner ist als die Zahl der gew�nschten Views (WHERE ist < soll). Die Banner werden dann nach der Differenz aus Ist und Soll absteigend sortiert (ORDER BY (soll - ist) DESC). Wenn nun mehr als 3 Datens�tze die gleiche Differenz aufweisen, k�nnen nicht eindeutig genau 3 Datens�tze selektiert werden. Deshlab liefern Access und SQL Server (und andere) dann auch mehr als 3 Datens�tze und genau deshlab nimmt man dann z. B. noch die "id" in die ORDER-BY-Klausel: Damit k�nnen aufgrund der Sortierung immer genau 3 Datens�tze eindeutig selektiert werden. Bei 9 Bannern kann man so etwas auch problemlos mit den ASP-Komponenten "Ad Rotator", "Content Rotator" und "Counter" machen. Die Objekte werden einmal in der global.asa definiert und man hat dann lediglich 2 Methodenaufrufe f�r den Counter und f�r den Rotator. Die Steuerungsdateien kann man in einer <textarea> sehr einfach editieren. 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
