2012-08-31 55 views
0

我在刪除數據庫中的條目時遇到了一些麻煩。 我可以插入數據,但我無法刪除它們。問題使用C#(Visual Studio)從訪問數據庫中刪除條目

我有一個2變量數據庫,我想管理這些數據。但是當我調試程序時,第一個按鈕(btnAdicionar)工作正常,但是當我按下按鈕「btnRemover」時,我得到一個erron在行「cmd.ExecuteNonQuery();」

我在做什麼錯?感謝

這裏是代碼:

private void btnAdicionar_Click(object sender, EventArgs e) 
    { 
     OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\BancodeDados\\Nomes.mdb"); 
     string sql = "INSERT INTO Nomes (Nome, Sobrenome) VALUES(?, ?)"; 
     OleDbCommand cmd = new OleDbCommand(sql, conn); 
     conn.Open(); 
     cmd.Parameters.AddWithValue("Nome", txtNome.Text); 
     cmd.Parameters.AddWithValue("Sobrenome", txtSobre.Text); 
     cmd.ExecuteNonQuery(); 
     conn.Close(); 
     this.nomesTableAdapter.Fill(this.nomesDataSet.Nomes); 
    } 

    private void btnRemover_Click(object sender, EventArgs e) 
    { 
     OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\BancodeDados\\Nomes.mdb"); 
     string sql = "DELETE FROM Nomes (Nome, Sobrenome) WHERE (?, ?)"; 
     OleDbCommand cmd = new OleDbCommand(sql, conn); 
     conn.Open(); 
     cmd.Parameters.AddWithValue("Nome", txtNome.Text); 
     cmd.Parameters.AddWithValue("Sobrenome", txtSobre.Text); 
     cmd.ExecuteNonQuery(); 
     conn.Close(); 
     this.nomesTableAdapter.Fill(this.nomesDataSet.Nomes); 
    } 
+0

待辦事項你想刪除整個數據庫行或只是將這兩個值清空? –

+0

我想刪除數據庫行 –

回答

6

你delete語句不是有效的SQL,因此,當你調用ExecuteNonQuery

應該是這樣的錯誤:

DELETE FROM Nomes WHERE Nome= ? and Sobrenome = ? 
+1

複製並粘貼:所有邪惡的根源! –

相關問題