lke*_*ler 0 delphi sorting ms-access ado tadotable
我正在使用Delphi,但这是一个简单而普遍的问题:
我正在做以下事情:
var
ArticlesTable: TADOTable;
begin
ArticlesTable.DisableControls;
ArticlesTable.Sort := 'CITY';
ArticlesTable.First;
while not ArticlesTable.Eof do begin
...
ArticlesTable.Next;
end;
Run Code Online (Sandbox Code Playgroud)
这非常有效,并且允许我逐个有效地处理记录,并且当它们进入时,CITY字段按顺序递增记录.
但是,现在我想通过"LAST NAME"字段订购,其中包含一个嵌入式空间.但是当我使用声明时:
ArticlesTable.Sort := 'CITY';
Run Code Online (Sandbox Code Playgroud)
我收到错误消息:
EOleException: Arguments are of the wrong type, are out of acceptable range,
or are in conflict with one another.
Run Code Online (Sandbox Code Playgroud)
我已经看到了SORT字符串语法的帮助.它表示用逗号分隔多个字段,并在字段之后添加ASC或DESC以对升序或降序进行排序.但它没有说明如果fieldname中有空格怎么办.
我已经尝试将字段名称放在单引号和双引号中,甚至使用#20作为空格字符,但这些不起作用.
我无法更改Microsoft Access数据库上的字段名称,因为还有其他程序我不能使用它依赖它.
我确信必须有一种简单的方法来做到这一点,我不知道.
ska*_*adt 10
您是否尝试过用方括号括起字段名?例如:
ArticlesTable.Sort := '[LAST NAME]';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12630 次 |
| 最近记录: |