Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

[5分]企业版用sql server,绑定表修改功能时没反应或超时

飞翔  发表于:2009-06-04 16:41:11  
复制

修改内容后经常关闭没有反映。

 

Top
竹笛 发表于:2009-06-04 16:50:13

不要采用绑定链接表的方法来实现修改,采用ADO的方法来实现显示数据和保存数据.

 

一、显示数据:

Private Sub Form_Load()
    Dim strConn As String
    Dim strsql As String
    Dim Cnxn As ADODB.Connection
    Dim rst As ADODB.Recordset
    strConn = Forms!usysfrmlogin!LabConn.Caption
    Set Cnxn = New ADODB.Connection
    Cnxn.Open strConn
    Set rst = New ADODB.Recordset
    strsql = "select * from tblmemberinfor where mid='" & selectstr & "'"
    rst.CursorLocation = adUseClient    '本地游标
    rst.Open strsql, strConn
    rst.MoveFirst

    Me.myName = rst("mName")

    Me.mSex = rst("mSex")
    Me.cartNum = rst("cartNum")
    Me.cardID = rst("cardID")
    Me.mDate = rst("mDate")
    Me.mAmoun = rst("mAmoun")
    Me.mConversion = rst("mConversion")
    rst.Close
    Cnxn.Close
    Set rst = Nothing
    Set Cnxn = Nothing

end sub

 

二、保存数据:

    Dim strConn As String
    Dim strsql As String
    Dim Cnxn As ADODB.Connection
    Dim rstMember As ADODB.Recordset
    strConn = Forms!usysfrmlogin!LabConn.Caption
        Set Cnxn = New ADODB.Connection
        Cnxn.Open strConn
        Set rstMember = New ADODB.Recordset
        strsql = "select * from tblmemberinfor where mid='" & selectstr & "'"
        rstMember.Open strsql, Cnxn, adOpenKeyset, adLockOptimistic
        rstMember.MoveFirst
        rstMember("mName") = Me.myName
        rstMember("mSex") = Me.mSex
        rstMember("cartNum") = Me.cartNum
        rstMember("cardID") = Me.cardID
        rstMember("mDate") = Me.mDate
        rstMember("mAmoun") = Me.mAmoun
        rstMember("mConversion") = Me.mConversion
        rstMember.Update
        rstMember.Close
        Cnxn.Close
        Set rstMember = Nothing
        Set Cnxn = Nothing



竹笛 发表于:2009-06-04 16:56:22
注意窗体和文本框的数据源都是没有的,不需要绑定。


竹笛 发表于:2009-06-05 10:28:31

用来显示数据的子窗体也改用ADO代码,例如:

Private Sub Form_Load()
    On Error GoTo Err_Form_Load:
    Dim strConn As String
    Dim strsql As String
    Dim Cnxn As ADODB.Connection
    Dim rst As ADODB.Recordset
    strConn = CurrentProject.Connection.ConnectionString
    Set Cnxn = New ADODB.Connection
    Cnxn.Open strConn
    Set rst = New ADODB.Recordset
    strsql = "qryMemberInfor" '这里也可以是sql 代码,如: select * from 表名称
    rst.CursorLocation = adUseClient    '本地游标
    rst.Open strsql, strConn, adOpenDynamic, adLockOptimistic
    Set Me.Recordset = rst
    rst.Close
    Cnxn.Close
    Set rst = Nothing
    Set Cnxn = Nothing
Exit_Form_Load:
    Exit Sub
Err_Form_Load:
    Application.Echo True
    Resume Exit_Form_Load

End Sub



总记录:3篇  页次:1/1 9 1 :