2010-08-29 183 views
0

我在visual stdio 2005中工作vb.net。
我想從我的表中刪除一個表的名稱顯示在列表框中,當我按下我的應用程序中的刪除按鈕時,什麼都不會發生。在vb.net中刪除命令

Private Sub cmdDELETE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdDELETE.Click 
     Me.SqlConnection1.Open() 
     Dim mycom As SqlCommand 
     Dim ra As Integer 
     mycom = New SqlCommand("DELETE @PICTUREDATA From pic WHERE 
     (NAME = '+ ListBox1.SelectedItem + ')", Me.SqlConnection1) 
     ra = mycom.ExecuteNonQuery() 
     MessageBox.Show("ROWS AFFECTED " & ra) 
     Me.SqlConnection1.Close() 
    End Sub 

任何幫助plzz

+0

你可以嘗試執行查詢DELETE @PICTUREDATA從圖片WHERE(NAME ='+ ListBox1.SelectedItem +')「 - 與選定的項目值傳遞給代碼 - 直接在數據庫中,並檢查是否達到所需結果?代碼SEEMS非常OK..u將需要進行調試以確定問題所在。 – InSane 2010-08-29 04:45:55

回答

2

如果您有複製粘貼代碼,至少有一個錯誤使用引號。 它應該是這樣的:

mycom = New SqlCommand("DELETE @PICTUREDATA From pic WHERE 
(NAME = '" + ListBox1.SelectedItem + "')", Me.SqlConnection1 

但你真的應該考慮使用SqlCommand.Parameters集合添加你輸入的數據。您的代碼面臨SQL注入攻擊。