Suche in Datenbank

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

Suche in Datenbank

Beitrag von Ironsmurf »

Ich suche den Fehler im Script
Ich möchte lernen eine Datenbank zu programmieren,
dazu setze ich mich mit Structure und Dim auseinander,
aber ich habe einen Fehler in der For Next Schleife.
Kann man die Schleife so programmieren das er alle Felder des Array´s
absucht, also alle Eingaben werden in einer Eingabezeile gemacht.

Code: Alles auswählen

OpenConsole()
Structure Movies 
    Filmtitel$
    StarA$
    StarB$ 
EndStructure 
  
Dim Video.Movies(20) 
Video(0) \ Filmtitel$ = "James Bond 007 - Moonraker" 
Video(0) \ StarA$ = "Roger Moore"
Video(0) \ StarB$ = "Desmond Llewelyn"             

Video(1) \ Filmtitel$ = "James Bond 007 - Thunderball"
Video(1) \ StarA$ = "Sean Connery"
Video(1) \ StarA$ = "Desmond Llewelyn"

Video (2) \ Filmtitel$ = "James Bond 007 - Goldfinger"
Video (2) \ StarA$ = "Sean Connery"
Video (2) \ StarB$ = "Desmond Llewelyn"

suche$ = Input()
 For Video = 0 To 4
 DVD$ = Filmtitel (Video.b) ; diese Zeile ist böse
 If FindString (DVD$,suche$,1)
  
   PrintN("") : PrintN (DVD$)
  EndIf
  Next
Input()   
CloseConsole()

Vielen Dank schon mal dafür
Es kommt immer auf die Sichtweise des Betrachters an.
Benutzeravatar
HeX0R
Beiträge: 3042
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Beitrag von HeX0R »

Code: Alles auswählen

DVD$ = Video(Video)\Filmtitel$
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Code: Alles auswählen

OpenConsole()
Structure Movies
  Filmtitel$
  StarA$
  StarB$
EndStructure
 
Dim Video.Movies(20)
Video(0) \ Filmtitel$ = "James Bond 007 - Moonraker"
Video(0) \ StarA$ = "Roger Moore"
Video(0) \ StarB$ = "Desmond Llewelyn"             

Video(1) \ Filmtitel$ = "James Bond 007 - Thunderball"
Video(1) \ StarA$ = "Sean Connery"
Video(1) \ StarA$ = "Desmond Llewelyn"

Video (2) \ Filmtitel$ = "James Bond 007 - Goldfinger"
Video (2) \ StarA$ = "Sean Connery"
Video (2) \ StarB$ = "Desmond Llewelyn"

suche$ = Input()
suche$ = Left(suche$,Len(suche$)-2)

For i = 0 To 4
  DVD$ = Video(i)\Filmtitel$
  If FindString (UCase(DVD$),UCase(suche$),1) 
    PrintN("") : PrintN (DVD$)
  EndIf
Next
Input()   
CloseConsole()
Antworten