Verbinden mit einer Access-Datenbank in C#

Muhammad Zeeshan 12 Oktober 2023
Verbinden mit einer Access-Datenbank in C#

In diesem Artikel wird das Herstellen einer Verbindung zu einer Access-Datenbank in C# erläutert.

Microsoft Access

Microsoft Access ist ein Datenverwaltungsprogramm, mit dem Sie Daten für zukünftige Referenzen, Berichte und Analysen speichern können. Im Gegensatz zu Microsoft Excel oder anderen Tabellenkalkulationsprogrammen können Sie mit Microsoft Access große Datenmengen analysieren und zugehörige Daten effizient verarbeiten.

Verbindung zu einer Access-Datenbank in C#

Wir können eine Verbindung zu einer Access-Datenbank in C# herstellen, indem wir die folgenden Schritte ausführen.

  • Öffnen Sie zunächst Microsoft Access und wählen Sie eine leere Desktop-Datenbank aus. Benennen Sie die Datenbank und klicken Sie dann auf Erstellen.

  • Erstellen Sie eine Tabelle in der Datenbank und benennen Sie sie. Wir nennen es EmployeeInfo mit vier Spalten: Eid, Ename, Edept und Eaddress.

  • Starten Sie jetzt Microsoft Visual Studio und erstellen Sie eine neue Windows Form-Anwendung. Ziehen Sie im Projektmappen-Explorer die Datenbankdatei per Drag-and-Drop aus Documents in den Projektverzeichnisordner, der mit Microsoft Access erstellt wurde.

  • Erstellen Sie ein Formulardesign wie das folgende:

    Erstellen Sie ein Mitarbeiter-Info-Formular-Design

  • Doppelklicken Sie auf die Schaltfläche Submit Data. Wenn Sie auf die Schaltfläche 1 doppelklicken, wird ein Ereignis erstellt.

  • Fügen Sie nun die folgenden Bibliotheken für die Konnektivität hinzu:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.Data.OleDb;
    
  • Generieren Sie eine Verbindungszeichenfolge, indem Sie zu den Tools gehen und Connect to the database aus der Liste auswählen, dann durchsuchen Sie die Datenbank im Projektverzeichnis.

    Fügen Sie der Datenbank eine Verbindung hinzu

  • Wählen Sie aus der Liste Advanced und dann Provider aus. Kopieren Sie den Text als Verbindungszeichenfolge.

  • Erstellen Sie nun eine Verbindungszeichenfolge und weisen Sie sie einer statischen Zeichenfolge vom Typ constr wie folgt zu:

    static string constr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + Application.StartupPath +
                           "/employeeinfo.mdb";
    
  • Initialisieren Sie eine Variable vom Typ OleDbConnection dbcon, um eine Verbindung herzustellen, und übergeben Sie die Verbindungszeichenfolge constr als Parameter:

    OleDbConnection dbcon = new OleDbConnection(constr);
    
  • Fügen Sie schließlich diese Codezeilen hinzu, um Mitarbeiterinformationen wie Mitarbeitername, Abteilung und Adresse einzugeben.

    OleDbCommand cmd = dbcon.CreateCommand();
    dbcon.Open();
    cmd.CommandText = "Insert into EmployeeInfo (Ename, Edept,Eaddress)Values('" + txtEmpname.Text +
                      "','" + txtEmpdept.Text + "','" + txtEmpaddress.Text + "')";
    cmd.Connection = dbcon;
    cmd.ExecuteNonQuery();
    MessageBox.Show("Data Inserted Successfully");
    dbcon.Close();
    

Beispielquellcode

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;

namespace WindowsFormsApplication1 {
  public partial class Form1 : Form {
    static string constr =
        "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + Application.StartupPath +
        "/employeeinfo.mdb";
    OleDbConnection dbcon = new OleDbConnection(constr);

    public Form1() {
      InitializeComponent();
    }

    private void button1_Click_1(object sender, EventArgs e) {
      OleDbCommand cmd = dbcon.CreateCommand();
      dbcon.Open();
      cmd.CommandText = "Insert into EmployeeInfo (Ename, Edept,Eaddress.)Values('" +
                        txtEmpname.Text + "','" + txtEmpdept.Text + "','" + txtEmpaddress.Text +
                        "')";
      cmd.Connection = dbcon;
      cmd.ExecuteNonQuery();
      MessageBox.Show("Data Inserted", "Congrats");
      dbcon.Close();
    }
  }
}
Muhammad Zeeshan avatar Muhammad Zeeshan avatar

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.

LinkedIn

Verwandter Artikel - Csharp Database