首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

奇怪,SQL语句加了order by就不能moveprevious了?解决办法

2012-02-27 
奇怪,SQL语句加了order by就不能moveprevious了?SQLServer数据库,select*fromtable1游标移动正常,但如果查

奇怪,SQL语句加了order by就不能moveprevious了?
SQL   Server数据库,
select   *   from   table1

游标移动正常,但如果查询语句加了order   by:
select   *   from   table1   order   by   id

MovePrevious就失败,报“在此环境中不允许操作”,游标类型adOpenKeyset和adOpenDynamic都试过了。


[解决办法]
是不是从小到大拍的,那样的话,第一个得前边好像没有
[解决办法]
你是ado方式吗?我用ado方式,没有这个问题
[解决办法]
没有碰到这个问题。
[解决办法]
用客户端游标时一下
conn-> CursorLocation=adUseClient;
rs-> CursorLocation=adUseClient;


[解决办法]
把代码貼出来看一下。
[解决办法]
你的意思是table1 本来没有主键的,然后你设置主键为ID以后

MovePrevious 就好用了??
[解决办法]
如果在ID上添加索引的话,不是主键,MovePrevious会有这样的问题吗?
[解决办法]
效率问题
SQL Server在你用一个没有索引的动态query中move游标的时候,会重新建立一次表,运算很复杂,所以干脆就不让你这么做了。
[解决办法]
偶认为,是因为没有任何索引的话,ado(还是数据库啊)无法定位你所指定的记录,因为他无法识别到底所谓的前一个是哪个……
[解决办法]
晕。。那movefirst又怎么可以???

热点排行