VB.net mit Access DB verbinden, lesen, ändern

DJTommyB

Grünschnabel
Hi!

Bin noch ziemlich neu auf dem Gebiet VB und brauche mal wieder eure Hilfe.

Ich suche ein gutes Tut oder ähnliches, in Vb mit ner Access DB zu arbeiten.
Verbindung krieg ich hin und die Daten krieg ich auch ins DataGrid, genau das will ich aber nicht.

Ich will quasi ne Schleife die mir jedes Feld in ne Variable "schmeisst" so dass ich das dann weiter verwenden kann.
Sowas wie in PHP -->
PHP:
for($i = 0; $i<mysql_num_rows($con); $i++)
{
    $arr = mysql_fetch_assoc($con);
    echo "Name: " $arr['name'];
    echo "Adresse: " $arr['adress'];
}
usw....


Hier mal mein VB Code:

PHP:
        Dim myOleDbConnection As New OleDb.OleDbConnection
        myOleDbConnection.ConnectionString = _
        "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=""C:\Dokumente und Einstellungen\Berg.MAGE\Eigene Dateien\Highscore\highscore.mdb"""

        Try
            myOleDbConnection.Open()
        Catch ex As Exception
            MessageBox.Show(ex.Message, _
                "Beim Öffnen der Datenbank ist ein Fehler aufgetreten.")
        End Try

        Dim myOleDbSelectCommand As New OleDb.OleDbCommand
        myOleDbSelectCommand.Connection = myOleDbConnection
        myOleDbSelectCommand.CommandText = "select * from highscore_list"

        Dim myOleDbDataAdapter As New OleDb.OleDbDataAdapter
        myOleDbDataAdapter.SelectCommand = myOleDbSelectCommand

        Dim myDataSet As New DataSet
        myOleDbDataAdapter.Fill(myDataSet, "Highscore Liste")

        DataGridView1.DataSource = myDataSet
        DataGridView1.DataMember = "Highscore Liste"

Wie stell ich das Ganze an, und wie krieg ich dann Werte aus einfachen Textboxen in die DB?

mfg
Tommy
 
Zuletzt bearbeitet:
nun, manche sind mit meiner Meinung sicher nicht einverstanden, aber die Nutzung von DataAdapters finde ich überflüssig.

Es gibt drei Möglichkeiten, wie man ein Command ausführen kann (abhängig davon, was man damit machen möchte):

- ExecuteNonQuery (insert, update Abfragen)
- ExecuteReader (select Abfragen)
- und ExecuteScalar

Anstatt ein DataSet im DataAdapter aufzufüllen, benutze doch einfach:

Code:
mycmd="select * from highscorelist"
Dim dr as Oledb.OledbDataReader
dr=mycmd.Executereader

Und so bekommst du alle daten in einem DataReader serviert. Und mit der Schleife geht es so:

Code:
while dr.Read

msgbox "score" & dr("score") 'oder dr(0)

end while

dies habe ich aus Erinnerung geschrieben, es kann sein, dass die Objektnamen ein bisschen anders sind.
 

Neue Beiträge

Zurück