C# MS Access中是否有oracle ref cursor的等效项?

C# MS Access中是否有oracle ref cursor的等效项?,c#,database,oracle,ms-access,ref-cursor,C#,Database,Oracle,Ms Access,Ref Cursor,我们正在MS Access数据库中寻找Oracle Ref Cursor替代方案,因为我们的数据量很小。我们想轻装,但在进入MS Access之前,只是想评估它所提供的功能。我不是MS Access开发人员。Access没有可以在SQL中定义的经典游标。访问SQL的权限太有限 但是,VBA下的DAO(数据访问对象)非常类似于游标。使用代码,您可以模拟Ref游标所能做的大部分事情 概述DAO与参考光标 可以动态打开,也可以基于逻辑打开。DAO=是;Ref Cursor=Yes 可以返回到客户端(

我们正在MS Access数据库中寻找Oracle Ref Cursor替代方案,因为我们的数据量很小。我们想轻装,但在进入MS Access之前,只是想评估它所提供的功能。我不是MS Access开发人员。

Access没有可以在SQL中定义的经典游标。访问SQL的权限太有限

但是,VBA下的DAO(数据访问对象)非常类似于游标。使用代码,您可以模拟Ref游标所能做的大部分事情

概述DAO与参考光标

  • 可以动态打开,也可以基于逻辑打开。DAO=是;Ref Cursor=Yes
  • 可以返回到客户端(调用程序)。DAO=是;Ref Cursor=Yes
  • 可以是全球性的。DAO=是;参考光标=否
  • 可以从一个子例程传递到另一个子例程。DAO=是;Ref Cursor=Yes

(归功于)

Access没有可以在SQL中定义的经典游标。访问SQL的权限太有限

但是,VBA下的DAO(数据访问对象)非常类似于游标。使用代码,您可以模拟Ref游标所能做的大部分事情

概述DAO与参考光标

  • 可以动态打开,也可以基于逻辑打开。DAO=是;Ref Cursor=Yes
  • 可以返回到客户端(调用程序)。DAO=是;Ref Cursor=Yes
  • 可以是全球性的。DAO=是;参考光标=否
  • 可以从一个子例程传递到另一个子例程。DAO=是;Ref Cursor=Yes

(归功于)

谢谢基斯默特的精彩回答!它确实帮助我们顺利通过了这个决定。现在我脑子里有另一个问题,就像Oracle有输出参数一样,我们在MS Access中有与之等效的东西吗?我要开始一个新问题。如果说输出,是指存储过程的返回值?由于Access使用VBA作为编程语言,因此您实际上并没有调用存储过程,而是调用VBA代码,这样的代码肯定可以向调用代码返回值。它实际上可以归结为何时、如何以及在何处调用此类代码的上下文。通常更重要的是您计划如何处理返回值。一般来说,如果您在Oracle中有一个服务器端存储过程,那么Access中的“客户端VBA/DAO函数”将是等效的。感谢Kismert提供了如此精彩的答案!它确实帮助我们顺利通过了这个决定。现在我脑子里有另一个问题,就像Oracle有输出参数一样,我们在MS Access中有与之等效的东西吗?我要开始一个新问题。如果说输出,是指存储过程的返回值?由于Access使用VBA作为编程语言,因此您实际上并没有调用存储过程,而是调用VBA代码,这样的代码肯定可以向调用代码返回值。它实际上可以归结为何时、如何以及在何处调用此类代码的上下文。通常,更重要的是您计划如何处理返回值。一般来说,如果您在Oracle中有一个服务器端存储过程,那么Access中的“客户端VBA/DAO函数”就是等效的。