0

如果我在同一命令中有两个或多个查询:

Using myCommand As New OracleCommand(
"select value from table where id between 1 and 3;" & 
"select value1 from table where id = 1000", DBSettings.GetConnection())

DataTable从第一个请求中选择了值

Dim dt As DataTable = New DataTable
dt.Load(myCommand.ExecuteReader)

value1 = dt.Rows(0).Item(0).ToString().Trim()
value2 = dt.Rows(1).Item(0).ToString().Trim()
value3 = dt.Rows(2).Item(0).ToString().Trim()

我可以从第二个请求中通过 DataTable 获取值吗?我的值是否有可能从以下请求中获取行?

我不想创建很多命令和 DataTable,因为我有很多命令和需要初始化的值

4

1 回答 1

1

做一个UNION。它将两个查询组合成一个结果集。

select value from table where id between 1 and 3
UNION
select value1 from table where id = 1000;

这是与您的问题中的新信息相同的查询

SELECT SYSPARM_VAL2 FROM SMS_PARM WHERE SYSPARM_ID BETWEEN 9900029 AND 9900033
UNION
SELECT SYSPARM_VAL4 FROM SMS_PARM WHERE SYSPARM_ID = 9900030;
于 2017-03-02T14:46:33.550 回答