gpt4 book ai didi

vba - 记录集.movefirst "Rowset position cannot be restarted"

转载 作者:行者123 更新时间:2023-12-01 22:16:43 27 4
gpt4 key购买 nike

我有一个运行存储过程的函数,该存储过程仅返回一行和一列(因此一个结果)。

我正在尝试将一个结果放入变量中,以便我可以返回它。我正在尝试使用 recordset.MoveFirst 但收到“Rowset 位置无法重新启动”的消息。错误。我尝试删除它,因为我只有一个结果,但随后出现溢出。我的声明如下:

If recordset.EOF = False Then
recordset.MoveFirst
temp = rs!ID
End IF

temp 是一个整数。我已经检查了存储过程以确保它只返回单个结果,而且确实如此。难道我做错了什么?有没有更好的方法将结果传递给变量?记录集可能是只向前的(这意味着它是只读的?),但我似乎找不到如何解决这个问题的答案。

最佳答案

如果您之前没有导航过记录集,通常没有理由MoveFirst

溢出与数据库代码无关,是由rs!ID不适合VBA整数(16位)引起的,因此将 temp 改为 Long(32 位)并删除 MoveFirst

关于vba - 记录集.movefirst "Rowset position cannot be restarted",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22356278/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com