Mensen,
Wij hebben voor onze studie een opdracht gekregen om een "winkeltje" te ontwerpen in Visual Basic 6 (SP 5) met Acces (2000) als database.
Nu zit ik echter met een probleem met bij de database.
We hebben in de database verschillende tabellen. Die tabellen lezen wij (project-maat en ik) in VB uit met een SQL:
Als via VB iets in de database wilt toevoegen, krijg je de melding: Kan de gegevens niet bijwerken. De database of object is alleen lezen.
Natuurlijk is dit niet het geval. Ik heb namelijk alles nagekeken, zowel de database als in VB.
We maken gebruik van DAO, en ik heb begrepen (gezocht op GoT) dat je een ADO datacontrol moet gebruiken om het probleem te verhelpen.
Wij hebben nog niet veel verstand van VB, en moeten alles zelf uitzoeken. Nu hebben we de "search" van VB en van GoT gebruikt, maar wij snappen nog niet hoe we een ADO datacontrol kunnen maken.
Dit is onze DAO code om gegevens in de database toe te voegen:
Wij willen dus gegevens kunnen toevoegen in verschillende tabellen van de database. Dit kan dus niet met DAO, wat is de makkelijkste manier om dit probleem op te lossen?
Graag duidelijk tips, want zoals ik heb gezegt, wij weten er weinig van af.
Alvast bedankt voor de moeite.
Wij hebben voor onze studie een opdracht gekregen om een "winkeltje" te ontwerpen in Visual Basic 6 (SP 5) met Acces (2000) als database.
Nu zit ik echter met een probleem met bij de database.
We hebben in de database verschillende tabellen. Die tabellen lezen wij (project-maat en ik) in VB uit met een SQL:
code:
1
2
3
4
5
| SELECT Artgroepen.*, Artikel.*, Artiest.*, Leveranciers.Levnr, Leveranciers.Levnm FROM Artgroepen, Artikel, Artiest, Leveranciers WHERE Artgroepen.Artgroepnr = Artikel.Artgroepnr AND Artiest.Artiestnr = Artikel.Artiestnr AND Artikel.Levnr = Leveranciers.Levnr; |
Als via VB iets in de database wilt toevoegen, krijg je de melding: Kan de gegevens niet bijwerken. De database of object is alleen lezen.
Natuurlijk is dit niet het geval. Ik heb namelijk alles nagekeken, zowel de database als in VB.
We maken gebruik van DAO, en ik heb begrepen (gezocht op GoT) dat je een ADO datacontrol moet gebruiken om het probleem te verhelpen.
Wij hebben nog niet veel verstand van VB, en moeten alles zelf uitzoeken. Nu hebben we de "search" van VB en van GoT gebruikt, maar wij snappen nog niet hoe we een ADO datacontrol kunnen maken.
Dit is onze DAO code om gegevens in de database toe te voegen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
| Private Sub cmdToev_Click()
' declaraties
Static blnVlag As Boolean
' status omzetten
blnVlag = Not (blnVlag)
' bepaal toestand
If blnVlag Then
' aangeven dat er een nieuw record gemaakt wordt
datArtikelen.Recordset.AddNew
' knoptekst wijzigen
cmdToev.Caption = "Toevoegen"
' focus op veld Artnr
txtArtnr.SetFocus
Else ' gegevens aan database toevoegen
' nieuw record
datArtikelen.Recordset("Artikel.Artnr") = txtArtnr.Text
datArtikelen.Recordset("Artgroepen.Artgroepnr") = txtArtgroepnr.Text
datArtikelen.Recordset("Artgroepen.Artgroepnm") = txtArtgroepnm.Text
datArtikelen.Recordset("Artiest.Artiestnr") = txtArtiestnr.Text
datArtikelen.Recordset("Artiest.Artienm") = txtArtienm.Text
datArtikelen.Recordset("Artikel.Titel") = txtTitel.Text
datArtikelen.Recordset("Artikel.Pps") = txtPps.Text
datArtikelen.Recordset("Artikel.Artvoor") = txtArtvoor.Text
datArtikelen.Recordset("Artikel.Artijz") = txtArtijz.Text
datArtikelen.Recordset("Artikel.Artbest") = txtArtbest.Text
datArtikelen.Recordset("Leveranciers.Levnr") = txtLevnr.Text
datArtikelen.Recordset("Leveranciers.levnm") = txtLevnm.Text
datArtikelen.Recordset.Update
' knoptekst wijzigen
cmdToev.Caption = "Nieuw record"
End If
End Sub |
Wij willen dus gegevens kunnen toevoegen in verschillende tabellen van de database. Dit kan dus niet met DAO, wat is de makkelijkste manier om dit probleem op te lossen?
Graag duidelijk tips, want zoals ik heb gezegt, wij weten er weinig van af.
Alvast bedankt voor de moeite.

