Wie update MS Access-Datenbank

Ich brauche ein einfaches Programm zum update von MS Access-Datenbank-Felder. Ich folgte einer online-tutorial, das war einfach und hatte den code arbeiten. Aber es scheint nicht mehr zu funktionieren, wenn ich die implementieren es. Hier ist mein code.

 public partial class Form1 : Form
 {
    public Form1()
    {
        InitializeComponent();
    }

    OleDbConnection conn;
    OleDbDataAdapter da;
    DataSet ds;
    OleDbCommandBuilder cb;
    DataRow row;

    private void Form1_Load(object sender, EventArgs e)
    {
        conn = new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0; Data Source = C:\\test.mdb");
        da = new OleDbDataAdapter("select* from user", conn);
        ds = new DataSet();

        conn.Open();
        da.Fill(ds, "user");
        conn.Close();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        cb = new OleDbCommandBuilder(da);
        row = ds.Tables["user"].Rows[0];

        row[3] = "hello";

        da.Update(ds, "user");
    }
}

user ist der name der Tabelle meiner Datenbank. Was ich versucht habe zu tun ist, aktualisieren Sie die Zeile Feld[0] (erste Zeile) und die Spalte[3] (4. Spalte) mit dem string hello.. Der Fehler den ich bekomme, ist Synatx error in FROM clause. Nach einigen internet zu Lesen, fand ich user werden in eckige Klammern gesetzt. Also machte ich es.

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    OleDbConnection conn;
    OleDbDataAdapter da;
    DataSet ds;
    OleDbCommandBuilder cb;
    DataRow row;

    private void Form1_Load(object sender, EventArgs e)
    {
        conn = new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0; Data Source = C:\\test.mdb");
        da = new OleDbDataAdapter("select* from [user]", conn);
        ds = new DataSet();

        conn.Open();
        da.Fill(ds, "user");
        conn.Close();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        cb = new OleDbCommandBuilder(da);
        row = ds.Tables["user"].Rows[0];

        row[3] = "hello";

        da.Update(ds, "user");
    }
}

Wenn ich dies mache, bekomme ich eine neue Fehlermeldung, Syntax error in UPDATE statement. Ich war viel im internet Lesen aber keiner scheint dieses Problem lösen. Sie haben alle verwendet Update Befehl anders. Ich kenne nur diesen Weg. Was ist falsch in meinem code? Vor allem, da diese vorher funktioniert. Oder ist nicht diese Art der Aktualisierung eine richtige Technik? Bitte helfen Sie mir mit dem code und nicht technische Begriffe, die ich nicht Folgen. Oder andere Verfahren zur Aktualisierung in ms-access?

Dank.

Ich löschte meine Antwort, denn auf den code betrachten, sah ich ein paar Fragen. Anstatt zu versuchen, zu überarbeiten, würde ich empfehlen, die Lektüre dieses Artikels: msdn.microsoft.com/en-us/library/tf579hcz(VS.90).aspx
^danke David. Lassen Sie mich gehen durch..

InformationsquelleAutor nawfal | 2011-03-25

Schreibe einen Kommentar