作者yauhh (姚呵呵)
看板Visual_Basic
標題Re: [.NET] datagrid刪除資料的問題
時間Sat Jun 14 02:05:04 2008
※ 引述《yukimir (小環)》之銘言:
: Protected Sub dg_DeleteCommand(ByVal source As Object, ByVal e As
: System.Web.UI.WebControls.DataGridCommandEventArgs) Handles dg.DeleteCommand
: Dim con As OleDbConnection
: Dim com As OleDbCommand
: Dim provider = "provider=microsoft.jet.oledb.4.0"
: Dim database = "data source=" & Server.MapPath("db2.mdb")
: con = New OleDbConnection(provider & ";" & database)
: con.Open()
: com.CommandText = "delete from guest where 標題 =" &
: dg.DataKeys(e.Item.ItemIndex)
: com.ExecuteNonQuery()
: con.Close()
: data()
: End Sub
很快地隨便看一下這些碼,如果你的資料庫連線都沒問題,
上述 com.CommandText 設定 DELETE 子句是以純字串方式構成 SQL 句,
在資料庫中, guest.標題 欄位是字串類型, SQL 句應該是:
Delete From guest Where 標題 = 'abc'
,如果 dg.DataKeys(e.Item.ItemIndex) 是 'abc'.
寫成 com.CommandText 的話, SQL 該有的引號要帶進去,應該是
com.CommandText = "delete from guest where 標題 = '" & _
dg.DataKeys(e.Item.ItemIndex) & "'"
做不順的時候,把 com.CommandText 輸出到 Console, 就有線索可檢查.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.160.211.217
※ 編輯: yauhh 來自: 218.160.211.217 (06/14 02:07)
推 yukimir:阿...我把guestbook打成guest了= = 我改成你說的樣子,不 06/14 12:37
→ yukimir:過還是失敗了orz... 06/14 12:38