Zählen der tatsächlich vorhandenen Datensätze

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Ironsmurf
Beiträge: 111
Registriert: 04.01.2006 12:57
Computerausstattung: AMD FX(tm)-6300 Six-Core Processor
3.50 GHz / 8 GB Ram
Windows 7 / 64bit / Ultimate
Purebasic 5.20 LTS (Windows - x86)
Wohnort: Deutschland

Zählen der tatsächlich vorhandenen Datensätze

Beitrag von Ironsmurf »

Hallo zusammen

ich beschäftige mich mit einer Datenbank, in der max. 10 000 Datensätze liegen können.
Wie muß eine Schleife aussehen, die mir die bis jetzt vorhandenen Datensätze zählt.

Vielen Dank im voraus

Code: Alles auswählen

Structure Movie
           Code$
           Name$
           Star$
           Info$
           Regi$
           Jahr$
           Lang$
           Trai$
  EndStructure

;################################################################

Dim DVD.Movie(9999)

  DVD (0001) \ Code$ = "0001"
  DVD (0001) \ Name$ = "Cocktail"
  DVD (0001) \ Star$ = "Tom Cruise, Bryan Brown, Elisabeth Shue"
  DVD (0001) \ Info$ = "A001"
  DVD (0001) \ Regi$ = "Roger Donaldson"
  DVD (0001) \ Jahr$ = "1988"
  DVD (0001) \ Lang$ = "103"
  DVD (0001) \ Trai$ = "001A"
Es kommt immer auf die Sichtweise des Betrachters an.
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Zählen der tatsächlich vorhandenen Datensätze

Beitrag von Kiffi »

kommt drauf an. Ist Code$ ein Pflichtfeld? Können Lücken vorhanden sein?

Code: Alles auswählen

Anzahl_Datensaetze=0

For Counter = 0 To 9999
  If DVD(Counter)\Code$ <> ""
    Anzahl_Datensaetze + 1
  EndIf
Next

Debug Str(Anzahl_Datensaetze) + " Datensätze vorhanden"
Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
Ironsmurf
Beiträge: 111
Registriert: 04.01.2006 12:57
Computerausstattung: AMD FX(tm)-6300 Six-Core Processor
3.50 GHz / 8 GB Ram
Windows 7 / 64bit / Ultimate
Purebasic 5.20 LTS (Windows - x86)
Wohnort: Deutschland

Beitrag von Ironsmurf »

Code$ & Name$ sind Pflichtfelder !

Doppelpost entfernt [Falko]
Es kommt immer auf die Sichtweise des Betrachters an.
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

Ironsmurf hat geschrieben:Code$ & Name$ sind Pflichtfelder !
ja, dann kannst Du ja meinen Code nehmen.

Allerdings würde ich persönlich kein Array sondern eine LinkedList
verwenden. Aber das ist Geschmackssache...


Grüße ... Kiffi

P.S.: Bitte Doppelpostings vermeiden. Dafür gibt es den Edit-Button.
a²+b²=mc²
Benutzeravatar
scholly
Beiträge: 793
Registriert: 04.11.2005 21:30
Wohnort: Düsseldorf

Re: Zählen der tatsächlich vorhandenen Datensätze

Beitrag von scholly »

Ironsmurf hat geschrieben:ich beschäftige mich mit einer Datenbank, in der max. 10 000 Datensätze liegen können.
Ist die nur für Kauf-DVDs oder auch für Selbstgebranntes?
Wie muß eine Schleife aussehen, die mir die bis jetzt vorhandenen Datensätze zählt.
Darf man fragen, wann/wo/wie Du die Daten abspeicherst?
Vielleicht kann man dort die Anzahl direkt auslesen.
Kiffi hat geschrieben:Allerdings würde ich persönlich kein Array sondern eine LinkedList verwenden.
Aber das ist Geschmackssache...
Oder direkt aus einer SQL(ite)-DB heraus benutzen, falls er es dort abspeichert :wink:
Ich bin blutiger PB-Anfänger.
seit 17.12.08: PB 4.3 unter XP Home(SP3)
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Zählen der tatsächlich vorhandenen Datensätze

Beitrag von Kiffi »

scholly hat geschrieben:Oder direkt aus einer SQL(ite)-DB heraus benutzen, falls er es dort abspeichert :wink:
ja, das wäre natürlich die optimale Vorgehensweise. Allerdings vermute ich,
dass Ironsmurf die Daten aus einer Textdatei ausliest.

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
scholly
Beiträge: 793
Registriert: 04.11.2005 21:30
Wohnort: Düsseldorf

Re: Zählen der tatsächlich vorhandenen Datensätze

Beitrag von scholly »

Kiffi hat geschrieben:Allerdings vermute ich, dass Ironsmurf die Daten aus einer Textdatei ausliest.
Das vermute ich ja auch, weil ich mit meiner Video-Verwaltung damals auch mit CSV angefangen habe.
Allerdings war Dein "Bekehrungsversuch" :wink: dank der nachfolgenden Unterstützung aus vielen Ecken so erfolgreich, daß ich den Einsatz von SQLite nicht mehr missen möchte :lol:
Ich bin blutiger PB-Anfänger.
seit 17.12.08: PB 4.3 unter XP Home(SP3)
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Re: Zählen der tatsächlich vorhandenen Datensätze

Beitrag von AND51 »

Code: Alles auswählen

Define n, Anzahl_Datensaetze=0

For Counter = 0 To 9999
  If Not DVD(n)\Code$
     Break
  EndIf
  Anzahl_Datensaetze+1
Next

Debug Str(Anzahl_Datensaetze) + " Datensätze vorhanden"
Sooo ist's besser :lol:
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Zählen der tatsächlich vorhandenen Datensätze

Beitrag von Kiffi »

AND51 hat geschrieben:Sooo ist's besser :lol:
nope. Man kann nicht davon ausgehen, dass die 'Datensätze' lückenlos gefüllt
sind, solange Ironsmurf meine Frage nicht beantwortet hat:
Kiffi hat geschrieben:Können Lücken vorhanden sein?

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

OK, da hast du natürlich Recht.
Übrigens würde ich genau wie du genau aus diesem Grunde zu LinkedLists tendieren.

@ Ironsmurf:
Benutze bitte LinkedLists, dann kannst du die Anzahl der Datensätze direkt und bequem mit CountList() ermitteln!!
Außerdem kannst du Lücken vermeiden, denn "leere" Felder kannst du mit DeleteElement() löschen!!
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Antworten