请教,我在进行datagrid控件显示ado的表,如何通过选择datagrid的行删除和修改该行记录,谢谢拉!最好能贴个示范代码!!感谢!!

解决方案 »

  1.   

    Option ExplicitPrivate Rs As New ADODB.Recordset
    Private Conn As New ADODB.ConnectionPrivate Sub Form_Load()
     Dim strConn As String
     
     ' 连接数据库的字符串
     ' 连接带密码的数据库,直接在连接符后面加上Jet OLEDB:DataBase Password='您的密码'
     ' 连接Access97数据库需要使用Jet.OLEDB.3.5,Access2K和以上数据库使用Jet.OLEDB.4.0
     strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\test.mdb;Persist Security Info=False"
     
     ' 使用客户端数据游标
     Conn.CursorLocation = adUseClient
     ' 打开Access的连接
     Conn.Open strConn
     
     ' 如果RecordSet的状态不是关闭状态,则关闭Recordset
     If Rs.State <> adStateClosed Then Rs.Close
     
     ' Recordser打开表People
     Rs.Open "Select * from People", Conn, adOpenKeyset, adLockOptimistic
     
     ' 报告出 一共多少笔数据,测试是否存在数据
     ' MsgBox Rs.RecordCount
     
     ' 绑定进DataGrid
     Set DataGrid1.DataSource = Rs
     
    End Sub'---修改:直接在datagrid上面就能够修改的,不用再写上其他的代码
    '---删除:Rs.Delete
      

  2.   

    Set rsxian = New ADODB.Recordset
    Set rs = New ADODB.Recordsetcon.ConnectionString = "Provider=SQLOLEDB.1;Password=june1234;Persist Security Info=True;User ID=sa;Initial Catalog=mrmt;Data Source=N091"
    con.CursorLocation = adUseClient
    con.Openrs.Open "delete from dz where bianhao ='" & DataGrid1.Columns(0).Text & "'", con,1,1rsxian.Open "select * from dz", con, 1,1
    Set dzcf.DataGrid2.DataSource = rsxian
      

  3.   

    莫姐的方法也是对的  把打datagrid的allowupdate = true 也可但是容易发生误操作
      

  4.   

    我现在遇到的问题是:若自己用AddNew方法添加数据到数据表里,然后再用rs.delete删除时,报错,说我没有定位到哪一行,而我明明在datagrid1定位了某行。然后他就把所有的数据都删除了 ,但是奇怪的是我要是用已经生成好的表,删除没有问题,请问这是为什么啊,谢谢!