当前位置:编程学习 > C#/ASP.NET >>

SqlDataAdapter.Fill()方法是不是不支持多表查询的SQL语句?

select top 100 * from (select top 1000 * from tmpTable order by subTime asc) order by subTime desc

我有一个表,想取出第900到1000条记录,使用上面的SQL语句直接在SQL SERVER里执行是正常的。
但是用adapter.Fill(ds)执行时,就报错:
在关键字 'order' 附近有语法错误

请问是不是SqlDataAdapter不支持用这样的语句啊 --------------------编程问答-------------------- 支持的 可能是穿进去的时候 有问题 断点下 把SQL打出来试试 --------------------编程问答-------------------- SQL打出来也和预期的一样,就是我之前复制到SQLSERVER里能成功执行的那句 --------------------编程问答-------------------- SqlDataAdapter用的同一数据库吗?
  
*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/ --------------------编程问答-------------------- 要跟踪到sql server里面去看下最终执行的语句
try..
select top 100 * from (select top 1000 * from tmpTable order by subTime asc) as tempTab order by subTime desc --------------------编程问答-------------------- 如果查询语句没问题,adapter.Fill(ds)都支持的,最好放数据库里直接查询看一下 --------------------编程问答-------------------- 我是直接查询过的,也打印过程序中的SQL语句,那个语句直接执行是可以的,就是在程序里运行会报错。
--------------------编程问答-------------------- 语句没有问题,我在程序里测试通过,其它代码也贴出来看看,查查原因
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,