存储过程的返回的recordset能否在vb中更新呢?我在用vb+sqlserver2000开发 程序的时候需要用到
对存储过程的返回记录集进行修改并反映到后台的数据库表里面去代码如下:Set rs = New ADODB.Recordset
rs.CursorType = adOpenKeyset
rs.LockType = adLockOptimistic
Set rs = DE.Commands("getrs").Execute
Set dg(0).DataSource = rs
dg(0).Refresh其中“getrs”是存储过程名:语句“select * from viewname”
dg(0)是个datagrid,属性我已经设置成可修改
但是当程序运行后绑定到dg后发现数据不能修改?该怎么作呢?还是这样产生的数据集本身就是不能修改的呢

解决方案 »

  1.   

    这么简单的SQL语句就不要用存储过程了,用rs.open语句吧。
      

  2.   

    这样吧:    Rs.CursorLocation = adUseClient
        Rs.Open "select * from 表名", CN, adOpenDynamic, adLockOptimistic
        Set DataGrid1.DataSource = Rs没有必要用存储过程   如果你是两个以上的表select出来的,Datagrid不能更新
      

  3.   

    Set ddbfrid.DataSource = rs这样可行吗;能编译通过吗,rs应该怎样设置啊 ,我 的 怎么不幸啊 ;提示:the rowset is not bookable,为甚么?~我的RS是执行存储过程之后的到的。请不囹赐教