Database Access verbinding met project Visual studios 2010

Status
Niet open voor verdere reacties.

blackha

Gebruiker
Lid geworden
22 feb 2008
Berichten
22
Beste,

Ik zou eenvoudig de data van een access databank willen opvragen, kunnen bewerken en waar nodig ook verwijderen. Ik heb reeds verbinding gelegd door gebruik te maken van de wizard en alles lijkt te werken voor het opvragen van de data uit de databank. (volgende tutorial heb ik gevolgd: http://msdn.microsoft.com/nl-be/vbasic/bb643826(en-us).aspx)


Enkel als ik iets wil wijzigen of verwijderen wordt het niet doorgevoerd naar de databank. Ik lijk nochtans volledige verbinding te hebben met de databank. Als de verbinding wordt gelegd met de Access Database dan komt er de boodschap: Verbinding is geslaagd.

Kan iemand me verder helpen?

Alvast bedankt!
 
Laatst bewerkt:
In mijn vb.net werk ik op een andere manier:

1) maak een Module aan met de verwijzing naar je database:

[CPP]

Module DBCONNECTION
'DECLARATIE
Public con As New OleDb.OleDbConnection
Public dbprovider As String
Public dbsource As String

Public Sub CONNECTION()

'ERROR ONDERSCHEPPING
On Error GoTo err

'OPEN DATABASE CONNECTIE
dbprovider = "PROVIDER=Microsoft.Jet.OLEDB.4.0;"
dbsource = "Data Source= K:\DATABASE.mdb"

con.ConnectionString = dbprovider & dbsource

con.Open()

'ERROR HANDLING
Exit Sub
err:
MsgBox("Benodigde database niet gevonden." & vbCrLf & "Het programma wordt nu afgesloten", MsgBoxStyle.Exclamation, "ERROR")
Application.Exit()
Exit Sub
Resume
'END ERROR HANDLING

End Sub
End Module

[/CPP]


2) in je formulier roep je deze module op:

[CPP]

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

'OPEN DATABASE CONNECTIE
Call CONNECTION()

End Sub

[/CPP]


3) Bijvoorbeeld: combobox laden met klanten

[CPP]

'VUL KLANTEN IN
Dim ds As New DataSet
Dim da As OleDb.OleDbDataAdapter
Dim sql As String
Dim inc As Integer
Dim maxrows As Integer
sql = "SELECT klantnaam FROM t_klanten"
da = New OleDb.OleDbDataAdapter(sql, con)
da.Fill(ds, "klantnaam")

comboklant.Text = "Selecteer de klant"
maxrows = ds.Tables("klantnaam").Rows.Count
inc = 0

Do Until inc = maxrows
comboklant.Items.Add(ds.Tables("klantnaam").Rows(inc).Item(0))
inc = inc + 1
Loop

[/CPP]


4) Bijvoorbeeld: nieuw record toevoegen

[CPP]

'CONNECTIE
sql = "SELECT * FROM t_bestellingenwanden"
da = New OleDb.OleDbDataAdapter(sql, con)
da.Fill(ds, "vwbestelling")
Dim cb As New OleDb.OleDbCommandBuilder(da)
Dim dsNewRow As DataRow
dsNewRow = ds.Tables("vwbestelling").NewRow()



'TOE TE VOEGEN VELDEN
dsNewRow.Item("typewand") = txttypewand.Text


'UPDATE BESTELLINGEN
ds.Tables("vwbestelling").Rows.Add(dsNewRow)
da.Update(ds, "vwbestelling")


MsgBox("De bestellingen op dossiernummer " & dossiernr & " is toegevoegd.", MsgBoxStyle.Information, "MELDING")


[/CPP]
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan