datagrid错误,我已经头大了
我以下的程序:
1个form,1个cmd(删除),1个datagrid
--
public cnn as new adodb.connection
public rs as new adodb.recordset
--
private sub form_load()
cnn.Open "driver={sybase system};srvr=192.168.9.1,uid=sa,pwd=sa;database=aa"
rs.Open "select * from table_name", cnn, 3, 3
Set DataGrid1.DataSource = rs
DataGrid1.Refresh
end
--
Private Sub Command3_Click()
DataGrid1.AllowDelete = True
rs.Delete '这里报错
rs.Update
End Sub
错误信息:
Err.Number:-2147467259
Err.Source :Microsoft Cursor Engine
Err.Description :数据提供程序或其他服务返回E_FAIL状态。
另:谁能提供有关datagrid的修改,增加,删除的代码,小弟不胜感激!
问题点数:0、回复次数:9Top
1 楼lo000ol(八路)回复于 2003-12-02 00:04:42 得分 0
在rs.open前我也定义了类型
rs.CursorLocation = adUseClient
Top
2 楼melonboy()回复于 2003-12-02 00:08:30 得分 0
在rs.open前加一行
rs.CursorLocation=adUseClientTop
3 楼online(龙卷风V4.0--决战江湖(MS MVP-VB))回复于 2003-12-02 00:13:58 得分 0
以下代码经过测试,没有问题
Option Explicit
Private conn As ADODB.Connection
Private rs As ADODB.Recordset
Private Sub Command1_Click()
DataGrid1.AllowDelete = True
rs.Delete '这里报错
rs.Update
End Sub
Private Sub Form_Load()
Dim apppath As String
Dim DbFileName As String
Dim ConnectString As String
Dim i As Integer
Set conn = New ADODB.Connection
If Right(App.Path, 1) = "\" Then
apppath = App.Path
Else
apppath = App.Path & "\"
End If
DbFileName = apppath & "article.mdb"
ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
DbFileName & ";Persist Security Info=False;"
On Error Resume Next
With conn
.CursorLocation = adUseClient
.Open ConnectString
End With
Set rs = New ADODB.Recordset
rs.Open "select id,mc from mz", conn, 1, 3
If rs.EOF Then
Exit Sub
End If
Set DataGrid1.DataSource = rs
End SubTop
4 楼cgzwwy(王伟晔)回复于 2003-12-02 00:14:39 得分 0
1)DataGrid1.AllowDelete = True
rs.CursorLocation = adUseClient
假如没有猜错,都是多余的
2)rs.Open "select * from table_name", cnn, 3, 3
问题应该出在这里,您应该查一下3,3的意义,因为我通常使用的是2,1
3)rs.Delete不是这样写的
应该是在DataGrid的与delete相关的事件中写入rs.update
4)另外一种方法,取得要删除的记录号
使用rs.execute "delete id='' from...."Top
5 楼melonboy()回复于 2003-12-02 00:15:05 得分 0
Dim Bmk As Variant
For Each Bmk In datagrid1.SelBookmarks
rs.Bookmark = Bmk
rs.Delete
Next
rs.update
可以删除多条记录Top
6 楼lo000ol(八路)回复于 2003-12-02 00:50:00 得分 0
to online(龙卷风(白学了,重新充电中))
我连SQL也没有问题,但连SYBASE就不行了。
郁闷呀~Top
7 楼online(龙卷风V4.0--决战江湖(MS MVP-VB))回复于 2003-12-02 02:46:19 得分 0
连sybase的
http://expert.csdn.net/Expert/topic/2503/2503451.xml?temp=.9640772
http://expert.csdn.net/Expert/topic/2480/2480559.xml?temp=.9214289
Top
8 楼lo000ol(八路)回复于 2003-12-04 21:51:22 得分 0
请大家继续关注一下,我上面的代码在SQL2K上能用,但在SYBASE就报错了,谁知道是什么原因吗?Top
9 楼md2d()回复于 2003-12-05 04:24:32 得分 0
用ODBC连试试Top




