Gå til innhold

Koble vb.net 2005 mot access database


Anbefalte innlegg

Hei

Har nå prøvd meg på vb.net 2005 og sliter noe veldig på dette med å koble formen mot en access database. Har kodet en del i vb6 og dette med å koble opp var en grei sak og en kortfattet kode men dette er ikke lett i vb.net

 

Er ikke noe tilhenger med kontroller som er bunnet mot databasen for den blir lite fleksibel men liker å lage koden selv. Det fungerte jo med vb6 ;-)

 

har fått til dette med å hente data fra access basen og legger dette inn i listview kontrollen med denne koden:

Imports System.Data.OleDb

Dim strPath As String = Application.StartupPath
Dim strConn As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strPath & "\Data\database.mdb;Persist Security Info=False"

Dim strSQL As String

Dim LVW As ListViewItem
       Dim Datoconvert2 As String



       Datoconvert2 = Format(DateTimePicker1.Value, "Short Date")
       Datoconvert2 = "#" & Replace(Datoconvert2, ".", "/", 1) & "#"
       Dim cnnConn As OleDbConnection = New OleDbConnection(strConn)
       cnnConn.Open()



       strSQL = "SELECT * FROM tabell WHERE datodag = " & Datoconvert2
       strSQL = strSQL & " And Dag = '" & strDag & "'"
       strSQL = strSQL & " And laste= " & bolLaste
       strSQL = strSQL & " ORDER BY Start"

       Dim cmdReader As OleDbCommand = New OleDbCommand(strSQL, cnnConn)
       cmdReader.CommandType = CommandType.Text
       Dim odbReader As OleDbDataReader = cmdReader.ExecuteReader(CommandBehavior.Default)
       listview.Items.Clear()
       With odbReader
           If .HasRows Then
               While .Read
                   'Process the rows
                   LVW = listview.Items.Add(.Item(3).ToString)

                   With LVW

                       .SubItems.Add(odbReader.Item(1).ToString)
                       .SubItems.Add(Format(odbReader.Item(2).ToString, "Short Date"))
                       .SubItems.Add(odbReader.Item(4).ToString)
                       .SubItems.Add(Format(odbReader.Item(6).ToString, "Short Time"))
                       .SubItems.Add(Format(odbReader.Item(7).ToString, "Short Time"))



                   End With

               End While
               .Close()
           End If
       End With

 

 

dette legger felt inn i listview kontrollen og alt der er greit

Men i vb6 kunne jeg gjemme ID fra basen inne i tag'n på raden i listview kontrollen men denne funksjonen ser ikke ut til å eksistere i vb.net Liker ikke at id på raden legges åpent inn i listview raden, ikke at det skader men det ser ikke pent ut.

 

 

Men jeg finner ikke ut hvordan man legger inn ting i databasen og hvordan man sletter og oppdaterer en rad.

 

Er det en venlig sjel som kan sette meg på sporet? har søkt igjennom et utall forum og diverse vb nettsteder men det jeg får frem er basert på kontroller som er bundet ellers så er koden ikke logisk lagt frem slik at jeg forstår den..... ;-)

Lenke til kommentar
Videoannonse
Annonse

Lag en ny klasse hvor du overrider .ToString.

 

public class MinKlasse

public ID as integer

public Blah as string

public function overrides ToString()

return Blah

end function

end class

 

while datareader.Read()

dim mk as new MinKlasse()

mk.ID = ctype(datareader("ID"), integer)

mk.Blah = datareader("blah").ToString()

mindropdownliste.Add( mk )

end while

 

...

 

dim mk as MinKlasse = ctype(mindropdownliste.SelectedItem, MinKlasse)

mk.ID :)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...