SQL中的变量数组

SQL中的变量数组,sql,arrays,variables,Sql,Arrays,Variables,我很难找出我的问题。希望你们都知道这是否可行。我已经达到了MS Access的极限,我正在尝试将我的Access模块转换为在SQL server上运行 这是我正在运行的visual basic代码: Set rs1 = db.OpenRecordset("select * from ReportFilter") If rs1.EOF = True Then GoTo nextstep1 rs1.MoveFirst a = 0 Do b = 0 RPrim(a, b) =

我很难找出我的问题。希望你们都知道这是否可行。我已经达到了MS Access的极限,我正在尝试将我的Access模块转换为在SQL server上运行

这是我正在运行的visual basic代码:

Set rs1 = db.OpenRecordset("select * from ReportFilter")
If rs1.EOF = True Then GoTo nextstep1    
rs1.MoveFirst
a = 0
Do
    b = 0
    RPrim(a, b) = rs1.Fields(0).Value
    b = b + 1
    RPrim(a, b) = rs1.Fields(1).Value
a = a + 1
rs1.MoveNext
If rs1.EOF = True Then GoTo nextstep1
Loop
我不确定,并尝试了一些“谷歌”来找出如何在SQL server上实现这一点

reportfilter表已经填充,我只是找不到用表值填充变量的方法


任何帮助都将不胜感激。

Access和SQL Server之间的一个区别是Access嵌入了对VBA的支持,即它不仅是一个数据库,而且还是一个紧凑的应用程序平台。SQL Server是一种更健壮、可扩展和企业级的RDBMS,它不像VBA那样配备嵌入式4GL语言。我建议将扩展后的SQL Server解决方案与VB.net耦合(在VB.net中,您几乎可以插入Access VBA,只需稍作修改),或者使用任何其他自由语言(例如,轻量级的Perl或Java)。

这看起来像是试图将表中的前两列读入数组。SQL Server没有数组。您正在VB中读取数组。这与数据库本身无关

您可以在SQL Server上运行原始查询,它应该可以正常工作

您可以用数据库中的查询替换后续代码

此外,养成明确列出列的习惯:

select <col1>, <col2>
from ReportFilter
select,
来自ReportFilter