Toon posts:

[VB] Access database

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik pobeer een database te vullen, deze database is nog leeg.
Op een of andere manier blijft dat zo.
Ik krijg: "This action was cancelled by an associated object."
Ms zegt: dat er wordt geprobeerd data naar het NULL record te schrijven.
maar het lijkt mij dat wanneer ik Addnew doe, vervolgens de velden vul, en daarna update dat dat goed moet gaan.
Wanneer ik werk met een niet lege database gaat het wel,... tenminste anders.
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
Private Sub Nieuw()
If Not Data1.Recordset.EOF Then
   Data1.Recordset.Movelast
   I = Val(lblNr.Caption)
   Data1.Recordset.addnew
   lblNr.Caption = I + 1
Else
    I = 1
    Data1.Recordset.addnew
    MsgBox Data1.Recordset.BOF & Data1.Recordset.EOF
'Box : True True

    lblNr.Caption = I
 
End If
End Sub

'Hier worden gegeven ingevoerd alvorens op Toevoeg te klikken.



Private Sub cmdToevoeg_Click()
MsgBox Data1.Recordset.RecordCount & Data1.Recordset.BOF & Data1.Recordset.EOF
'box : 0 True Waar

Data1.Recordset.Update 'om het record weg te schrijven (addnew heeft zelfde effect)
'ERROR_ERROR_ERROR

plz help.

Verwijderd

Topicstarter
Anyone?

Verwijderd

Ik zou altijd SQL en gewoon een update statement genereren en dat uitvoeren. Dat is immers veel minder foutgevoelig dan directe databinding. (en ook nog eens veel sneller)

edit:

Laat maar, ik zat te ijlen :)

Er is trouwens wel een verschil tussen AddNew en Update... na een addnew moet je volgens mij idd een update doen...

  • XTerm
  • Registratie: Juli 2001
  • Laatst online: 10-06-2025
Je bent vergeten nte declareren dat je gaat toevoegen.

Eerst
code:
1
Data1.edit

En pas daarna
code:
1
Data1.addnew

en uiteindelijk
code:
1
Data1.update

Verwijderd

Op maandag 31 december 2001 10:43 schreef XTerm89D het volgende:
Je bent vergeten nte declareren dat je gaat toevoegen.

Eerst
code:
1
Data1.edit

En pas daarna
code:
1
Data1.addnew

en uiteindelijk
code:
1
Data1.update
Uhm .... bijna.

Als je een record wil wijzigen moet je de .Edit methode aanroepen, je gegevens aanpassen en dan .Update aanroepen om de wijzigingen op te slaan.

Als je een nieuw record wil toevoegen roep je de .AddNew methode aan, zet je de kolomwaarden en roep je daarna de .Update methode aan om het nieuwe record werkelijk aan te maken.

De code van mcloud is zo ranzig en niet compleet (zo zie je nergens hoe de recordset wordt aangemaakt, waar de Sub Nieuw wordt aangeroepen, etc) dat ik daar niet eens over na wil gaan denken.

  • XTerm
  • Registratie: Juli 2001
  • Laatst online: 10-06-2025
Inderdaad :'(

Ja ik zit hier vast in WinME tot mijn Maxtor wordt geleverd (januari) en kon het niet testen...
Pagina: 1