读书人

adoquery按照指定字段排序读取的文艺,

发布时间: 2012-02-27 10:00:22 作者: rapoo

adoquery按照指定字段排序读取的文艺
ADOQuery1.Close;
ADOQuery1.sql.clear;
ADOQuery1.SQL.add( 'select * from patient order by ccid asc ');
ADOQuery1.Open;
if adoquery1.IsEmpty then
exit
else
begin
//查询病号
ADOQuery1.First;
repeat
begin
lpid1:=ADOQuery1.fieldbyname( 'id ').asstring; //取出连接标记
lpid2:=ADOQuery1.fieldbyname( 'ccid ').asstring;
mynode:=tv1.Items.add(tv1.Selected,ADOQuery1.fieldbynam( 'id ').asstring);
tv1.Items.addchild(mynode,ADOQuery1.fieldbyname( 'name ').asstring);
tv1.Items.addchild(mynode,ADOQuery1.fieldbyname( 'sex ').asstring);
until adoquery1.eof;

ccid是字符型字段
我想用按照ccid的升序排列,用ADOQuery1读取到treeview中,数据库中ccid和id的顺序是一样的,所以,本来是在tv1中是按照id的次数从小到大的排列,
但是结果还是和数据库中排列的次数一样,没有按照从小到大的次数排列,实际的排列方式是id次序0001
0010
0011
0012
0013
0014
0002
0003
0004
0005
0006
0007
0008
0009
正确的次序应该是0001
0002
0003
.
.
.
0010
0011
0012
0013
0014


可以帮我看看是那里出错了吗?

[解决办法]
你这个字段是字符串类型的吧
字符串排序就是这个样子的


还有,楼上说的那个;是不用加的

读书人网 >.NET

热点推荐