Office中国论坛/Access中国论坛

标题: 请各位帮我看看这种情况处理方法 [打印本页]

作者: jay_0218    时间: 2007-8-15 11:12
标题: 请各位帮我看看这种情况处理方法
Private Sub CmdSave_Click()
On Error GoTo Err
Dim StrSql As String
Dim Rs As New ADODB.Recordset
   StrSql = "select * from Tbl_设备仓库零部件入库"
    Rs.Open StrSql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
    Rs.AddNew
    If IsNull(Me.入库日期) Then MsgBox "日期不能为空", vbCritical, "保存失败": Exit Sub Else Rs("入库日期") = Me.入库日期
    Rs("类型") = Me.类型
    Rs("型号规格") = Me.型号规格
    Rs("名称") = Me.名称
    Rs("入库数量") = Me.入库数量
    Rs("单位") = Me.单位
    Rs("单价") = Me.单价
    Rs("供应商") = Me.供应商
    Rs("总金额") = Me.总金额
    Rs("备注") = Me.备注
    Rs("存放位置类型") = Me.存放位置类型
    Rs("存放位置") = Me.存放位置
    Rs("录入人") = Me.LuruR
    Rs.Update
    MsgBox "保存成功", vbInformation + vbOKOnly, "恭喜"
    DoCmd.SetWarnings False
    StrSql = " INSERT INTO Tbl_设备仓库零部件在库 ( 类型,名称,型号规格,数量,单位,备注,供应商,存放位置类型,存放位置) SELECT [Forms]![Frm_设备仓库零部件入库]![类型] AS 表达式2, [Forms]![Frm_设备仓库零部件入库]![名称] AS 表达式3, [Forms]![Frm_设备仓库零部件入库]![型号规格] AS 表达式4, [Forms]![Frm_设备仓库零部件入库]![数量] AS 表达式5,[Forms]![Frm_设备仓库零部件入库]![单位] AS 表达式6,[Forms]![Frm_设备仓库零部件入库]![备注] AS 表达式7,[Forms]![Frm_设备仓库零部件入库]![供应商] AS 表达式8,[Forms]![Frm_设备仓库零部件入库]![存放位置类型] AS 表达式9,[Forms]![Frm_设备仓库零部件入库]![存放位置] AS 表达式10"
     DoCmd.RunSQL StrSql
   DoCmd.SetWarnings True
Exit Sub
Err:
MsgBox Err.Description
   
End Sub
出现的问题是:
作者: jay_0218    时间: 2007-8-16 21:14
提示老是不好更新
我用这一句 Rs.Open StrSql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
打开的
作者: t小宝    时间: 2007-8-16 21:50
先关闭记录集,再运行查询语句

Rs.Update
Rs.clos


[ 本帖最后由 t小宝 于 2007-8-16 21:58 编辑 ]
作者: ly    时间: 2007-8-16 22:48
标题: 我一般这样使用记录集,仅供参考
原帖由 jay_0218 于 2007-8-15 11:12 发表
Private Sub CmdSave_Click()
On Error GoTo Err
Dim StrSql As String
Dim Rs As New ADODB.Recordset
   StrSql = "select * from Tbl_设备仓库零部件入库"
    Rs.Open StrSql, CurrentProject.Connect ...



'***加一个新记录到数据源中***
Sub AddARecord()
Dim rsMyTable As Recordset
Set rsMyTable = New ADODB.Recordset
StrSql = "select * from MyTable"
'/在当前项目连接一个数据源,可用ActiveConnection方法/
rsMyTable.ActiveConnection = CurrentProject.Connection
'/Open方法的adOpenKeyset和adLockOptimistic参数允许向记录集添加新的记录/
    rsMyTable.Open strSQL, , adOpenDynamic, adLockOptimistic, adCmdText
'用AddNew方法添加一个新记录
    rsMyTable.AddNew
        rsMyTable.Fields("Column1").Value = ...
        rsMyTable.Fields("Column2").Value = ...
        rsMyTable.Fields("Column3").Value = ...
   .........
    rsMyTable.Update
End Sub




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3