我用的是ADO+datagrid.
我想delete表中的一個記錄. 程序如下:
Set db = Workspaces(0).OpenDatabase(dataname)
    Set td = db.TableDefs(list1.text)
    Set rs = td.OpenRecordset
    If rs.EOF Then
        MsgBox "Don't delete again!"
    Else
        rs.Delete
        rs.close
        Adodc1.Refresh
        DataGrid1.Refresh
    End If
但是每次都是delete第一條記錄. 怎樣delete datagrid左邊三角形指的記錄.
還有如何delete shift鍵選中的記錄?

解决方案 »

  1.   

    rs.Delete 就可以了上面所有的代码都不需要
      

  2.   

    Option Explicit
    Private strConn As String
    Private pubConn As New ADODB.Connection
    Private rsTable As New ADODB.Recordset
    Private strSQL  As String, strTableString As String
    Private Sub Form_Load()
        strConn = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=hdh;password=12345;Data Source=NTserver"
        pubConn.Open strConn    rsTable.CursorLocation = adUseClient
        rsTable.Open "select * from taby", strConn, adOpenDynamic, adLockPessimistic
        Set DataGrid1.DataSource = rsTable
    End SubPrivate Sub Command2_Click()
        rsTable.Delete  '刪除記錄
    End Sub不要那麼複雜的。
      

  3.   

    您上面的程序可以. 但是每次刪除时候. 三角形就跑到表头记录了.
    我想用up. down.将三角形移到表中位置.刪除表中的一些记录.
      

  4.   

    adodc1.record.delete adaffectcurrent
    同意这样!