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
Datenbank zugriff über Visual basic
Moderator: Moderatoren
- komma4
- ********
- Beiträge: 5332
- Registriert: Mi, 03.05.2006 23:29
- Wohnort: Chon Buri Thailand Asia
- Kontaktdaten:
Re: Datenbank zugriff über Visual basic
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.
Wie stellst Du die Verbindung zur Datenbank her, wie öffnest Du sie, ...
Zeige mal Deine Versuche.
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Re: Datenbank zugriff über Visual basic
also mein VB COde ist folgender
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
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
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"
- komma4
- ********
- Beiträge: 5332
- Registriert: Mi, 03.05.2006 23:29
- Wohnort: Chon Buri Thailand Asia
- Kontaktdaten:
Re: Datenbank zugriff über Visual basic
Ich denke, um auf eine OOo-BASE-Datei zuzugreifen solltest Du nicht versuchen eine MS-engine zu nutzen.KevDi hat geschrieben:kommt die Meldung Nicht erkennbares Datenbankformat 'C:\Dokumente und Einstellungen\praktikant\Eigene Dateien\db.odb'.
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!
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
-
- ********
- Beiträge: 4330
- Registriert: Di, 22.06.2004 12:02
- Wohnort: 71134 Aidlingen
- Kontaktdaten:
Re: Datenbank zugriff über Visual basic
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.).
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.).
Gruß
Peter
---------------------------------------------------------------------------
Windows 7 Prof. 64-bit SP1, LibreOffice 4.3.6.2 und AOO 4.1.1
Peter
---------------------------------------------------------------------------
Windows 7 Prof. 64-bit SP1, LibreOffice 4.3.6.2 und AOO 4.1.1