Seite 1 von 1
Datenbank zugriff über Visual basic
Verfasst: Fr, 10.10.2008 11:59
von KevDi
Guten Tag
Wie im Titel schon beschrieben hab ich ein Problem mit dem Zugriff auf eine Open office base datenbank. Ich habe mir eine Datenbank erstellt und möchte nun über Visual Basic 2005 ein Program zum Verwalten schreiben. Anfangen wollte ich mit einem programm das per Buttonklick alle daten der Datenbank in einem Listenfeld ausgibt. Nur immer wenn ich auf den Button drück kommt die Meldung Nicht erkennbares Datenbankformat 'C:\Dokumente und Einstellungen\praktikant\Eigene Dateien\db.odb'.
Weis einer vllt jmd woran das liegt oder wie man mit Visual Basic 2005 auf eine Datenbank zugreifen kann
Re: Datenbank zugriff über Visual basic
Verfasst: Fr, 10.10.2008 14:47
von komma4
Was passiert (Code?!), wenn die Schaltfläche gedrückt wurde?
Wie stellst Du die Verbindung zur Datenbank her, wie öffnest Du sie, ...
Zeige mal Deine Versuche.
Re: Datenbank zugriff über Visual basic
Verfasst: Fr, 10.10.2008 15:07
von KevDi
also mein VB COde ist folgender
Code: Alles auswählen
Public Class Form1
Private Sub cmdsehen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdsehen.Click
Dim con As New OleDb.OleDbConnection
Dim cmd As New OleDb.OleDbCommand
Dim reader As OleDb.OleDbDataReader
con.ConnectionString = _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=C:\Dokumente und Einstellungen\praktikant\Eigene Dateien\db.mdb"
cmd.Connection = con
cmd.CommandText = "select * from person"
Try
con.Open()
reader = cmd.ExecuteReader()
lstListe.Items.Clear()
Do While reader.Read()
lstListe.Items.Add( _
reader("name") & " # " _
& reader("vorname") & " # " _
& reader("personalnummer") & " # " _
& reader("gehalt") & " # " _
& reader("geburtstag"))
Loop
reader.Close()
con.Close()
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
End Class
Als form ist ein fenster mit dem Sehen Button und ein Listfeld
DIe Datenbank mit Open office ist ganz einfach gehalten.
SIe hat nur eine Tabelle namens Personen. Mit Access hab ich das auf einem anderen Pc probiert mit dem Code da hat das geklappt nun denk ich das man in folgendere Zeile was ändern muss
Code: Alles auswählen
con.ConnectionString = _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=C:\Dokumente und Einstellungen\praktikant\Eigene Dateien\db.mdb"
cmd.Connection = con
cmd.CommandText = "select * from person"
Re: Datenbank zugriff über Visual basic
Verfasst: Sa, 11.10.2008 13:33
von komma4
KevDi hat geschrieben:kommt die Meldung Nicht erkennbares Datenbankformat 'C:\Dokumente und Einstellungen\praktikant\Eigene Dateien\db.odb'.
Ich denke, um auf eine OOo-BASE-Datei zuzugreifen solltest Du nicht versuchen eine MS-
engine zu nutzen.
Ich nutze weder Windows, noch VBA oder OLE, kann Dir hier deshalb nicht mehr sagen...
Schau' mal, ob Dir diese Links (und deren Links!) weiter helfen:
http://www.oooforum.org/forum/viewtopic.phtml?t=9815
http://www.oooforum.org/forum/viewtopic.phtml?t=37700
Viel Erfolg!
Re: Datenbank zugriff über Visual basic
Verfasst: Sa, 11.10.2008 15:45
von pmoegenb
Der Unterscheid besteht darin, dass .mdb eine Desktop-Datenbank ist und .odb lediglich der Container einer HSQLDB-Datenbank.
Wenn Zugriffe über externe Programme, als auch über OOo erfolgen sollen, wird nach meiner Auffassung eine externe Datenbank benötigt. Kostenlose Produkte gibt zuhauf auf dem Markt (SQLite -sehr klein und schnell-, Firebird -ausgewachsene SQL-DB-, MS-SQL-Server-Express -ausgewachsene SQL-DB- u.s.w.).