![]() |
Datenbank: Access • Version: 2003 • Zugriff über: ADO
Datenbank Abfrage Problem
Wieso funktioniert diese Abfrage nicht?
Delphi-Quellcode:
ADOQuery1.Sql.Add('SELECT TOP '10' * FROM abc ORDER BY RAND()');
|
Re: Datenbank Abfrage Problem
Weil da zuviel Hochkommata drin sind.
Delphi-Quellcode:
ADOQuery1.Sql.Add('SELECT TOP 10 * FROM abc ORDER BY RAND()');
|
Re: Datenbank Abfrage Problem
Oh ne sorry das ist schon klar. Habe ich falsch kopiert. Er gibt immer die Meldung "Undefinierte Funktion "RAND" zurück
|
Re: Datenbank Abfrage Problem
Gibt es die SP RAND?
|
Re: Datenbank Abfrage Problem
Gibt es SPs bei Access? Die Frage ist ernst gemeint, ich habe von Access keine Ahnung (und meide es wie die Pest ;)).
|
Re: Datenbank Abfrage Problem
SP?
|
Re: Datenbank Abfrage Problem
Stored Procedure
|
Re: Datenbank Abfrage Problem
Gibt es denn eine andere Möglichkeit zufällige Datensätze abzufragen?
|
Re: Datenbank Abfrage Problem
Hallo,
Zitat:
Grüße vom marabu |
Re: Datenbank Abfrage Problem
Sorry!
Ich weiß leider nicht was du mir damit sagen willst. |
Re: Datenbank Abfrage Problem
Hast du dir das SQL-Statement selbst ausgedacht oder ist das ein Beutestück? Der Ansatz über Rand() zufällige Datensätze auszulesen funktioniert in Access VBA. Damit es dann wirklich funktioniert muss das Statement aber noch etwas abgeändert werden - genau das ist der Inhalt meines vorigen Beitrags.
Ich kenne MS Access nicht so gut, aber ich fürchte du musst deine Selektion client-seitig ausführen, wenn du keine Erweiterungs-Bibliothek mit einem Random-Generator schreiben willst. Freundliche Grüße |
Re: Datenbank Abfrage Problem
Jack ist sehr gut im Kopieren von Code. Mit dem Verständnis klappt es leider nicht ganz so gut.
|
Re: Datenbank Abfrage Problem
Die SQL Zeile habe ich mir selbst ausgedacht. Von SQL verstehe ich nämlich ein wenig.
Meintest du ich soll RAND() einfach nur klein schreiben? |
Re: Datenbank Abfrage Problem
Ich habe jetzt eine Lösung ausgetüftelt. Ganz alleine! :-D
Das ist der Code. Vielleicht Interessiert es ja noch mal jemanden.
Delphi-Quellcode:
ADOQuery1.Sql.Add('SELECT * FROM abc WHERE ID=Int(((SELECT Max(ID) FROM abc)-(SELECT Min(ID) FROM abc)+ 1) * Rnd +(SELECT Min(ID) FROM abc))');
|
Re: Datenbank Abfrage Problem
Auf Grund des vorherigen Posts mach ich jetzt mal das, was meine Lateinlehrerin auch gerne macht: erklär mir doch mal den Code-Aufbau!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:42 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz