Ik had het volgende idee over classes om de database gegevens te beheren. Maar ik wilde weten of dit wel klopt en volledig is. Het gaat hier alleen om een opzet.
Ik heb hier alleen het adressen systeem inzitten, mocht dit kloppen dan voer ik het helemaal door. De overige gegevens heb ik weggelaten in deze post omdat het alleen om adressen gaat.
Een relatie (waar meerdere adressen in kunnen zitten):
Een lijst van adressen:
Een adres:
Roep je dus de Save procedure aan van de TRelatie, dan zal die de Save aanroepen van TListAdressen welke voor elk TAdres object weer de Save aanroept.
Is deze opzet een beetje goed zo. Heb ik overal aangedacht qua adressen?
Ik heb hier alleen het adressen systeem inzitten, mocht dit kloppen dan voer ik het helemaal door. De overige gegevens heb ik weggelaten in deze post omdat het alleen om adressen gaat.
Een relatie (waar meerdere adressen in kunnen zitten):
code:
1
2
3
4
5
6
7
8
9
| TRelatie = class(TObject) public Adressen: TListAdressen; function New: TRelatie; //Maakt een nieuwe relatie aan procedure Delete; //Verwijderd de relatie uit de database procedure Load(RelatieId: Integer); //Laadt alle relatie gegevens procedure Save; //Slaat de relatie gegevens op in de database end; |
Een lijst van adressen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
| TListAdressen = class(TObject) private List: ObjectList; //Lijst met TAdres objecten RelatieId: Integer; //Bij welke relatie horen deze adressen public procedure Load(RelatieId: Integer); //Laad alle adressen van een relatie function New: TAdres; //Maakt een leeg adres en voegt deze toe aan de lijst procedure Delete(Index: Integer); //Verwijder een adres uit de lijst procedure Save; //Sla de lijst van adressen op in de database function Item(Index: Integer): TAdres; //Geeft een adres terug property Count: Integer read GetCount; //Hoeveel adressen zijn er end; |
Een adres:
code:
1
2
3
4
5
6
7
8
9
10
| TAdres = class(TObject) public AdresId: Integer; Straat: String; Postcode: String; Woonplaats: String; procedure Load(AdresId: Integer); //Laadt een adres uit de database procedure Save; //Slaat een adres op in de database end; |
Roep je dus de Save procedure aan van de TRelatie, dan zal die de Save aanroepen van TListAdressen welke voor elk TAdres object weer de Save aanroept.
Is deze opzet een beetje goed zo. Heb ik overal aangedacht qua adressen?
"The shell stopped unexpectedly and Explorer.exe was restarted."