BillyBoy84 Geschrieben 22. Januar 2004 Teilen Geschrieben 22. Januar 2004 Ich habe ein Fragespiel programmiert, wo auf die Datenbak zugegriffen werden soll, um eine Frage auszuwählen! Nun weiss ich aber nicht, wie ich die Fragen per Zufall auswählen lassen kann! Ich bekomme es in der Reihenfolge mit Tabl1.next hin, aber wie mache ich es, dass sie durcheinander genommen werden? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 22. Januar 2004 Teilen Geschrieben 22. Januar 2004 In dem du es nicht über eine TTable machst (geht vielleicht auch damit wie ich es meine, aber mit eine Table hab ich noch nie viel gemacht) sondern über eine Abfrage (TQuery)... denke mal du nimmst Delphi <= 5 und die BDE... Dann nimmst du ein Feld Index zu deiner Tabelle dazu. Zuerst bestimmst du die maximale anzahl von Fragen: SELECT MAX(Index) FROM Fragen Dann bestimmst du eine Zufallszahl > 0 und < Max(Index) Über diese Zahl greifst du dann auf die Tabelle zu und merkst dir den Index SELECT Frage FROM Fragen WHERE INDEX = x (wobei x die Zufallszahl ist) Merken kannst du das über ein Set of Byte. So sind allerdings maximal 255 Fragen zulässig. EDIT: Mit einem Filter geht es vielleicht auch über eine TTable. Zufallszahl bestimmen, Filter löschen, Filter entsprechend der Zufallszahl setzen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Sill-el-Mot Geschrieben 22. Januar 2004 Teilen Geschrieben 22. Januar 2004 hi also wenn du es ganz simple machen willst bastel dir doch einfach eine schleife und für darin dein Tabl1.next x-mal aus. du kannst aber mit sicherheit auch direkt einen bestimmten datensatz ansprechen (hab in die richtung noch nicht viel gemacht, deswegen kann ich dir nich sagen wie). aber so wie beschrieben ist schon mal nen anfang (bis jmd was anderes postet ) gruß sille Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
BillyBoy84 Geschrieben 22. Januar 2004 Autor Teilen Geschrieben 22. Januar 2004 Original geschrieben von Sill-el-Mot hi also wenn du es ganz simple machen willst bastel dir doch einfach eine schleife und für darin dein Tabl1.next x-mal aus. du kannst aber mit sicherheit auch direkt einen bestimmten datensatz ansprechen (hab in die richtung noch nicht viel gemacht, deswegen kann ich dir nich sagen wie). aber so wie beschrieben ist schon mal nen anfang (bis jmd was anderes postet ) gruß sille Das klingt ziemlich einfach und logisch, ich werde dass mal probieren, danke schonmal!!! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kLeiner_HobBes Geschrieben 22. Januar 2004 Teilen Geschrieben 22. Januar 2004 also ich würde die lösung von JesterDay bevorzugen. Ist wesentlich einfacher und eleganter zu implementieren. Und wenn du Bit-Operationen nimmst, dann kannst du noch wesentlich mehr rausholen. mfG Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
BillyBoy84 Geschrieben 22. Januar 2004 Autor Teilen Geschrieben 22. Januar 2004 Ich werde beide mal versuchen!!! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.