Mit C# auf eine MS Access Datenbank zugreifen

Meza100

Enthusiast
Thread Starter
Mitglied seit
04.09.2006
Beiträge
562
Hi,

ich möchte gerne in einer Konsolenanwendung per C# auf eine Microsoft Access Datenbank (accdb) zugreifen. Hierzu habe ich mich schon mal darin versucht auf meine Testdatenbank zu zugreifen. Hoffentlich könnt ihr mir dabei auf die Sprünge helfen.

Ich kann zwar per Process.Start Access starten und meine Datenbank öffnen, aber ich komm nicht darauf wie ich ein bestimmtes Formular mit einer ID öffnen kann. Die ID wird über die Befehlszeilenargumente an die Datenbank weitergereicht.

Habt ihr da einen Vorschlag, wie mir das gelingen könnte?

Grüße
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
willst du auf die Access GUI zugreifen, oder nur auf die Daten in der Datenbank? Für letzteres würde sich wahrscheinlich eher ODBC anbieten. Oder eine COM Schnittstelle gibts bestimmt auch.
 
Kann nur VB.NET ist allerdings mit den selben Klassen dürfte sich nicht all zu viel ändern

Code:
Imports System.Data.OleDb

Public Class Form1
    Private Sub ....
        Dim dbCon As New OleDbConnection
        Dim dbCmd As New OleDbCommand
        Dim dbReader As OleDbDataReader
        Dim strAusgabe as String

        dbCon.ConnectionString =
            "Provider=Microsoft.ACE.OLEDB.12.0;" &
            "Data Source=C:\User\....."

        dbCmd.Connection = dbCon
        dbCmd.CommandText = "SQL_CODE"

        dbReader = dbCmd.ExecuteReader()
        While dbReader.read()
               strAusgabe = reader("Spaltenname")
                 'Mach was mit dem String 
        End while
End Sub
End Class

müsste dann
using System.Data.OleDb;
sein
 
hi ho...

ich mach das immer über das bereits erwähnte oledb-objekt in C#.

ich versuch das jetzt mal ausm kopf zusammen zu kriegen

Code:
OledbConnection conn;
OledbDataAdapter adapter;
DataTable table;

conn = new OledbConnection([eine menge von connectionstring gibt es z.b. hier: [url=http://www.connectionstrings.com/]]ConnectionStrings.com - Forgot that connection string? Get it here![/url]);
adapter = new OledbDataAdapter("", conn);

conn.open();

adapter.selectcommand.commandtext = "SELECT * FROM [myTable] ORDER BY Datum"
adapter.selectcommand.fill(table);

conn.close();

...und dann kannst du dir die daten aus dem tableobjekt holen und weiter verarbeiten.

mfg
 
ich möchte gerne in einer Konsolenanwendung per C# auf eine Microsoft Access Datenbank (accdb) zugreifen.

Da kann ich mich nur dem anschließen:
Nachdem ich Access meide weil ich... öhm... "eine eher bescheidene Meinung" darüber habe ( :fresse: )
Lass es sein, exportiere die Access-DB in eine "richtige" Datenbank (egal ob jetzt MSSQL, MySQL, Oracle, ... zur Not auch SQLite) und setzte das Projekt gleich richtig mit C# WPF, Java oder sonst was um.

Je schneller man diesen Access-Müll dort hin bringt wo er hin gehört (unwiderruflich gelöscht), desto besser. (Das ist ein ernst gemeinter Rat).
 

Ähnliche Themen

Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh