为什么会是“应用程序所需的对象操作不允许”?

sspanzervor 2003-04-06 01:18:46
大体要实现的功能如下:要打开存书表进行操作,如果Access数据库存书表中的“是否借出”项为True的话,就进行借出操作,否则的话,提示本书以借出,部分代码如下:
'对存书表进行操作并存储相应的记录项
rst.Open "select * from 存书 where 书号='" + Text2.Text + "'", cnn, adOpenDynamic, adLockOptimistic

If rst.EOF = True Then
MsgBox "输入的书号不存在!", vbOKOnly, "错误"
Text1.Text = ""
Text2.Text = ""
Text1.SetFocus
Else
If rst.Fields(5) = "No" Then
'将当前记录的“书号字段”和“书名”字段赋值给变量
booknum = rst.Fields(0)
bookname = rst.Fields(1)
'判断是否书借出
rst.Fields(5) = "Yes"
Else
MsgBox "此书已借出!", vbOKOnly, "警告!"
End If
End If
rst.Close
为什么总在rst.close处提示错误,但是如果不对“是否借出”域进行操作,这个模块就不会出问题,请问各位大虾,这是怎么回事?是不是和access数据库的设置有关?因为我的“是否借出”域开始设的是“是/否”型,但是后来我改成文本后,还是出现相同的问题,很郁闷。
...全文
126 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenyu5188 2003-04-06
  • 打赏
  • 举报
回复
楼主你没有更新,你将新的值给了field(5),你要更新后才有用的。

rst.CursorLocation=adUseClient'使用客户端游标
rst.Open "select * from 存书 where 书号='" & trim(Text2.Text) & "'", cnn, adOpenDynamic, adLockOptimistic

If rst.EOF Then
MsgBox "输入的书号不存在!", vbOKOnly, "错误"
Text1.Text = ""
Text2.Text = ""
Text1.SetFocus
Else
If rst.Fields(5) = "No" Then
'将当前记录的“书号字段”和“书名”字段赋值给变量
booknum = rst.Fields(0)
bookname = rst.Fields(1)
'判断是否书借出
rst.Fields(5) = "Yes"
rst.update'
Else
MsgBox "此书已借出!", vbOKOnly, "警告!"
End If
End If
rst.Close



sxs69 2003-04-06
  • 打赏
  • 举报
回复
不知为什么?我测试没问题
sspanzervor 2003-04-06
  • 打赏
  • 举报
回复
根本不行!不知道楼上的依据是什么?
sxs69 2003-04-06
  • 打赏
  • 举报
回复
booknum = rst.Fields(0)
bookname = rst.Fields(1)
'判断是否书借出
rst.Fields(5) = "Yes"
rst.update
sspanzervor 2003-04-06
  • 打赏
  • 举报
回复
改了,还是不行(rst.update)!
whale 2003-04-06
  • 打赏
  • 举报
回复
改变字段的值后,应该调用Update
已经博主授权,源码转载自 https://pan.quark.cn/s/a4b39357ea24 GridLayout是一种在Android系统中应用的布局方法,它通过构建二维网格来组织界面组件,为开发者提供了一个便捷且多样的途径来布置用户界面元素。在这个详尽的阐释中,我们将全面研究GridLayout的操作方式、其独有特性以及如何在实际的项目开发中高效地运用它。 GridLayout的关键在于其网格构造。在GridLayout中,每个控件可以占据一个或多个网格单元,这些单元通过行列坐标进行标识。通过设定控件的`android:layout_row`和`android:layout_column`属性,开发者可以明确控件在网格中的位置。比如,`android:layout_row="1"`意味着该控件位于第二行,而`android:layout_column="2"`则表示该控件位于第三列。 另外,GridLayout还支持设置控件能够跨越的网格单元数目,这通过`android:layout_rowSpan`和`android:layout_columnSpan`属性来实现。假如一个控件的`layout_rowSpan="2"`,那么它将覆盖两行的区域,`layout_columnSpan="3"`则导致其横跨三列。这种高度的适应性使得GridLayout能够满足各种复杂的界面设计求。 在GridLayout的应用中,控件的大小一般自动适配以填满整个网格单元。不过,开发者也可以通过`android:layout_width`和`android:layout_height`属性来设定确切的尺寸,或者使用`android:layout_weight`属性来分配剩余的空间...

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧