Office中国论坛/Access中国论坛
标题:
运行后提示不能更新,数据库或对象为只读
[打印本页]
作者:
VulcanTerry
时间:
2013-5-14 16:05
标题:
运行后提示不能更新,数据库或对象为只读
本帖最后由 VulcanTerry 于 2013-5-14 16:36 编辑
Dim rsPromotion As New ADODB.Recordset
Dim conx As New ADODB.Connection
Dim strPromotionSQL As String
Dim strPromotionCode As String
strPromotionSQL = "select * from tblPromotion"
Set conx = CurrentProject.Connection
rsPromotion.Open strPromotionSQL, conx, adOpenKeyset, adLockOptimistic
rsPromotion.AddNew
rsPromotion("PromotionCode") = PromotionAutoNum(Me.cboActivityCategoryID)
rsPromotion("ProposerID") = Me.cboEmployeeID
rsPromotion("Department") = Me.txtDepartment
rsPromotion("ApplicationDate") = Me.txtApplictionDate
rsPromotion("ActivityCategoryID") = Me.cboActivityCategoryID
rsPromotion("Activity") = Me.txtActivity
rsPromotion("ActivityDate") = Me.txtActivityDate
rsPromotion("Backdrop") = Me.txtBackdrop
rsPromotion("Objective") = Me.txtObjective
rsPromotion("Explain") = Me.txtExplain
rsPromotion("AmountExplain") = Me.txtAmountExplain
rsPromotion("Amount") = Me.txtAmount
rsPromotion.Update
rsPromotion.Close
Set rsPromotion = Nothing
Set conx = Nothing
如果通过其他窗体打开,执行此段代码,系统提示不能更新。不知道代码哪里有错,应该和窗体的设置没有关系吧
作者:
tmtony
时间:
2013-5-14 18:02
1.有否主键重复
2.将内容手工填 到表更新是否可以
3.窗体是否正在修改表
要有程序调试才好判断
作者:
VulcanTerry
时间:
2013-5-15 08:58
tmtony 发表于 2013-5-14 18:02
1.有否主键重复
2.将内容手工填 到表更新是否可以
3.窗体是否正在修改表
回复大大,在表里可以自由添加记录,我自己也在调试找原因。如果用第三个窗体打开,或直接打开这个添加记录的窗体,可以添加记录,不得其解啊
作者:
tmtony
时间:
2013-5-15 09:59
可否传个示例上来,才看到到原因
作者:
koutx
时间:
2013-5-15 10:59
[color=Red
]“如果通过其他窗体打开,执行此段代码,系统提示不能更新。”[/
color]
问题是:你这所谓的
其他窗体
上有没有你代码中那些作为值的控件?
作者:
VulcanTerry
时间:
2013-5-15 11:42
找到原因了,通过主窗体打开添加记录的窗体无法更新,是因为主窗体用于显示记录列表的子窗体数据属性,记录锁定栏应该为不锁定。你妹啊,整了好久,当时想的是记录源是查询,且是快照,判断错误了。
谢谢大大们的关注。
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/)
Powered by Discuz! X3.3