AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi zufällige datenbankabfrage
Thema durchsuchen
Ansicht
Themen-Optionen

zufällige datenbankabfrage

Ein Thema von schmodi · begonnen am 11. Dez 2004 · letzter Beitrag vom 5. Jan 2005
Antwort Antwort
Seite 1 von 2  1 2      
schmodi

Registriert seit: 11. Dez 2004
24 Beiträge
 
#1

zufällige datenbankabfrage

  Alt 11. Dez 2004, 17:38
Hallo zusammen

Ich habe ein problem.
Noch zum sagen ich programmiere erst seit etwa einem halben jahr, das heisst ich möchte die programiersprache erlernen jetzt hoffe ich das ihr mir weiter helfen könnt

Ich möchte eine zufällige abfrage aus einer Datenbank machen. Aber ich habe das bis jetzt einfach noch nicht geschafft.
Wenn ich das programm starte sollte im DB text 1 der erste datensatz erscheinen wenn man weitermacht sollte dann ein zufälliger datensatz erscheinen aber nie der gleiche wie schon einmal gekommen ist.
Wie ist das möglich ?
Schon mal vielen dank für eure hilfe.

Gruess Schmodi
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#2

Re: zufällige datenbankabfrage

  Alt 11. Dez 2004, 17:56
Hallo schmodi,

zunächst einmal herzlich willkommen im Delphi-PRAXIS Forum.

Enthält deine Tabelle eine ID oder einen anderen eindeutigen Schlüssel?

Dann könntest du die ID per Random Funktion ermitteln lassen und den entsprechenden Datensatz anzeigen. In einer Liste merkst du dir alle bisher angezeigten Datensätze (über ihrne Schlüssel), so dass du denselben Datensatz nicht noch einmal anzeigst.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
schmodi

Registriert seit: 11. Dez 2004
24 Beiträge
 
#3

Re: zufällige datenbankabfrage

  Alt 11. Dez 2004, 18:16
Vielen dank einmal.

Ich habe eine Paradox 7 datenbank erstellt.
Dort stehen im ersten feld die Anzahl datensäte und ganz am schluss steht schlüssel
aber in diesem Feld kann ich nur ein sternchen hineinsetzten.
Wie heisst den der befehl mit dem ich dieses feld ansprechen kann?

Gruess Schmodi
  Mit Zitat antworten Zitat
Albi

Registriert seit: 4. Mai 2003
Ort: Berlin
458 Beiträge
 
Delphi 7 Professional
 
#4

Re: zufällige datenbankabfrage

  Alt 11. Dez 2004, 18:24
Dieses Sternchen bedeutet nichts anderes als das dein Autozähler (Primary Key) dieses Feld wird bei POST automatisch generiert. Ansprechen kannst Du es wie jedes andere Feld auch.
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#5

Re: zufällige datenbankabfrage

  Alt 11. Dez 2004, 18:49
Hallo Albi,

das ist nicht ganz richtig . Der Stern sagt nur, dass dieses Feld alleiniges oder Teil eines zusammengesetzen Schlüssels (Primary Key) ist. Das muss aber kein AutoInc (bzw. Zähler bei Paradox) sein.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Albi

Registriert seit: 4. Mai 2003
Ort: Berlin
458 Beiträge
 
Delphi 7 Professional
 
#6

Re: zufällige datenbankabfrage

  Alt 12. Dez 2004, 09:25
Zitat von MrSpock:
Hallo Albi,

das ist nicht ganz richtig . Der Stern sagt nur, dass dieses Feld alleiniges oder Teil eines zusammengesetzen Schlüssels (Primary Key) ist. Das muss aber kein AutoInc (bzw. Zähler bei Paradox) sein.
Hast ja recht.
  Mit Zitat antworten Zitat
schmodi

Registriert seit: 11. Dez 2004
24 Beiträge
 
#7

Re: zufällige datenbankabfrage

  Alt 4. Jan 2005, 22:35
Hallo

Ich habe völig den überblick verloren.....

Muss ich das ganze mit einer SQL abfrage machen oder kann ich das mit der ganz noemalen Programiersprache erledigen.
Wie kann ich die felder ansprechen
Ich habe hier einen SQL text : SELECT [spalten] FROM [tabelle] WHERE id=Random(anz)
aber wo muss ich ihn einsetzten?
Ich hoffe Ihr könnt mir helfen.

Ich bin am

Gruess Schmodi
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#8

Re: zufällige datenbankabfrage

  Alt 4. Jan 2005, 22:47
Hallo Schmodi,

du kannst eine SQL Abfrage nehmen, aber auch mit FindKey arbeiten.

Delphi-Quellcode:
ranID := Random(anz);
if myTable.FindKey([ranID])then
  { Datensatz mit der ID ranID gefunden und als aktuellen Datensatz ausgewählt }
else
  { Datensatz existiert nicht }
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
schmodi

Registriert seit: 11. Dez 2004
24 Beiträge
 
#9

Re: zufällige datenbankabfrage

  Alt 5. Jan 2005, 12:45
Hallo
erst einmal vielen dank das hat einmal geklappt
jetzt bin ich aber am nächsten problem ich möchte den angezeigten datensatz oder z.b. nur die ID nummer des datensatzes abspeichern in einer Neuen Tabele, das ich beim nächsten zugriff abfragen kann ob dieser Datensatz schon einmal aufgerufen wurde?
Soviel wie ich gelesen habe muss ich den Quelltext so anfangen table1.insert;
Aber mit diesem Befehl weiss der Computer Ja nicht wohin er die ID numer speichern muss. Wie kann man das Lösen?

Gruess Schmodi
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#10

Re: zufällige datenbankabfrage

  Alt 5. Jan 2005, 13:04
Delphi-Quellcode:
  
  ClientDataSet1.Insert;
  ClientDataSet1.FieldByName('QUANTITY').AsInteger := StrToInt(Edit1.Text);
  ClientDataSet1.Post;
RT*M bitte index unter TTAble und dann Methoden->Beispiele
Trotzdem Herzlich willkommen.
Lies dir am bestendie komplette Hilfe zu TTable und
die Beispiele durch. Wirst auch machen müssen wenn dir
jetzt hier geholfen wird.

Ich vermute das du mit datenbanken noch garnichts anfangen kannst.
Wenn das so ist, ist es das beste wenn du dir ein paar Grundlagen aus Büchern
aneignest(Primary Key, Key, Tabelle, Datensatz, Datentypen, SQL vs ISAM, Anomalien).
Leider ist es eignetlich nicht möglich mal eben so Datenbanken zuverstehen.
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz