login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Public variable

Offline rredspike1 - 01/11/2008 13:34
Avatar van rredspike1Lid Hoi,

Telkens als ik iets in de database wil stoppen, moet ik dan steeds dit volgende in een Private Sub neerzetten of kan ik ook op 1 of andere manier dit aanroepen met public?

  1. Dim oConString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|MSP.mdb;"
  2. Dim oCon As New OleDb.OleDbConnection(oConString)


Had al iets geprobeerd maar dan krijg ik een foutmelding, met debug

3 antwoorden

Gesponsorde links
Offline Abbas - 01/11/2008 18:26
Avatar van Abbas Gouden medaille

Crew .NET
Je declareert gewoon die twee variabelen bovenaan binnen je klasse. Zo kan ze in elke Sub gebruikt worden en hoef je ze niet telkens opnieuw te declareren! 
Offline rredspike1 - 01/11/2008 19:18 (laatste wijziging 01/11/2008 19:21)
Avatar van rredspike1 Lid Had ik gedaan, alleen als ik dan op een knop druk van nieuwe klant toevoegen, zet die code het prima in de database, doe ik het een tweede keer, dus een 2e nieuwe klant, krijg ik een foutmelding.

Zie foutmelding
http://www.solu...elding.png

Code regel 286 is
  1. Try
  2. 'Hieronder is regel 286'
  3. oCon.Open()
  4. Dim oReaderBedrijfsnaam_Bestaat As OleDbDataReader = oCmdBedrijfsnaam_bestaat.ExecuteReader
  5. oReaderBedrijfsnaam_Bestaat.Read()
  6. If (oReaderBedrijfsnaam_Bestaat(0) > 0) Then
  7. strErrors &= "- Bedrijfsnaam bestaat al!" & Environment.NewLine
  8. xErrors = xErrors + 1
  9. End If
  10. Dim oReaderContactpersoon_Bestaat As OleDbDataReader = oCmdContactpersoon_bestaat.ExecuteReader
  11. oReaderContactpersoon_Bestaat.Read()
  12. If (oReaderContactpersoon_Bestaat(0) > 0) Then
  13. strErrors &= "- Contactpersoon bestaat al!" & Environment.NewLine
  14. xErrors = xErrors + 1
  15. End If
  16.  
  17. 'Alle errors bij elkaar optellen en weergeven'
  18. If xErrors > 0 Then
  19. MessageBox.Show(strErrors, "Fout", MessageBoxButtons.OK, MessageBoxIcon.Warning)
  20. xErrors = 0
  21. strErrors = ""
  22. Else
  23. 'In de database zetten
  24. Dim sSQL As String = "INSERT INTO Klanten(Bedrijfsnaam, Contactpersoon, Adres, Postcode, Plaats, Telefoonnummer, Faxnummer, Emailadres) VALUES('" & Me.txtBedrijfsnaam_Klanten.Text & "', '" & Me.txtContactpersoon_Klanten.Text & "', '" & Me.txtAdres_Klanten.Text & "', '" & Me.txtPostcode_Klanten.Text & "', '" & Me.txtPlaats_Klanten.Text & "', '" & Me.txtTelefoonnummer_Klanten.Text & "', '" & Me.txtFaxnummer_Klanten.Text & "', '" & Me.txtEmailadres_Klanten.Text & "')"
  25. Dim oCom As New OleDbCommand(sSQL, oCon)
  26. MsgBox("Nieuwe Klant toegevoegd!")
  27.  
  28. 'Velden leegmaken om een nieuwe klant te kunnen toevoegen'
  29. txtBedrijfsnaam_Klanten.Clear()
  30. txtContactpersoon_Klanten.Clear()
  31. txtAdres_Klanten.Clear()
  32. txtPostcode_Klanten.Clear()
  33. txtPlaats_Klanten.Clear()
  34. txtTelefoonnummer_Klanten.Clear()
  35. txtFaxnummer_Klanten.Clear()
  36. txtEmailadres_Klanten.Clear()
  37.  
  38. 'Verbinding database afsluiten
  39. Try
  40. oCom.ExecuteNonQuery()
  41. Catch ex As Exception
  42. MsgBox(ex.Message)
  43. Finally
  44. oCom.Dispose()
  45. oCon.Dispose()
  46. oCon.Close()
  47. End Try
  48. End If
  49.  
  50. oCmdBedrijfsnaam_bestaat.Dispose()
  51. oCmdContactpersoon_bestaat.Dispose()
  52. Catch ex As Exception
  53. MessageBox.Show(ex.ToString)
  54. Finally
  55. oCon.Close()
  56. oCon.Dispose()
  57. End Try
  58.  
  59. End Sub
Offline Abbas - 01/11/2008 20:06
Avatar van Abbas Gouden medaille

Crew .NET
Ik vermoed dat die fout veroorzaakt wordt door het feit dat je de connectie Disposed in je Finally. Dat kan je weglaten, zie dan eens of je de foutmelding nog krijgt..
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.172s