我有如下的SqlServer 2000语句,在执行之后,形成一个DataSet,里面包括3个DataTable。
string sql=@"
select top 1 * from sysuser
select top 1 * from FDAEnterprise
select top 1 * from FDADegree"之后我想在Access里面用同样的语句来进行查找,并希望得到一个包括这3个表的DataSet,结果提示。Form子句语法错误。于是我在查询分析器里面进行了测试。发现在SqlServer里面可以这样写,但Access里面不支持这样的写法。我想问一下,Access支持类似的操作吗(也就是在一个任务里面得到多个结果集)?如果支持,Sql语句该如何写?

解决方案 »

  1.   

    应该是不支持多语句输出好几个数据集的
    用Access很郁闷的,也不支持复杂的语句
      

  2.   

    还是使用3个select语句,得到3个表,逐个表Fill到DataSet中吧。
      

  3.   

    zhangliu_521(浪客),分部操作的话,那么就需要多次用oledbCommand对象连接数据库,执行多次命令,这意味着代码的臃肿与执行效率的低下。
    我需要在一次连接,完成这所有的任务。
      

  4.   

    Access不支持多个查询,你要分成三次查询,然后分别填充。没有其它的办法。
      

  5.   

    用union或者union all
    前提是表结构要一致
      

  6.   

    fish_yht(百行孝为先,万业勤为径。) 这个我也考虑过。不过我要收集表结果中的列名。Union all 就没有意义了。不过还是谢谢你的思路。
    wzd24(牧野),你的想法我听说过,有这个说法。
    但我还是想碰碰运气,看有没有什么好的方案。