Фильтрация текстового поля в ADOTable

Макар111
Дата: 21.06.2009 14:18:54
Всем привет. У меня проблемка, которую сам я, увы решить не могу! Использую ADOTable, DataSourse и DBGrid. Все поля в таблице у меня текстовые. Когда я произвожу сортировку, в поле, где распологаются одни числа, например "1, 5, 2, 55, 7, 6, 23", сортировка проходит не правильно из- за текстового типа данных. Т.е. в случае сортировки по возрастанию, получается вот что: "1, 2, 23, 5, 55, 6, 7". Можно ли как- нибудь не изменяя тип поля с текстового на числовой, непосредственно в Access'е произвести сортировку правильно?
if RadioGroup1.ItemIndex = 0 then //Выбор способа сортировки
   Main.ADOTable1.Sort:= '['+ ComboBox1.Text+ ']'+ ' ASC' //ComboBox1.Text -выбор поля для сортировки
else
   Main.ADOTable1.Sort:= '['+ ComboBox1.Text+ ']'+ ' DESC';
Макар111
Дата: 21.06.2009 14:19:52
Извиняюсь, за неправильное название темы. Не ФИЛЬТРАЦИЯ, а СОРТИРОВКА.
_Vasilisk_
Дата: 21.06.2009 15:11:55
1) Воспользоваться CAST (если он есть в Access)
2) Добавить слева нули или пробелы

С уважением, Vasilisk
misha mike
Дата: 21.06.2009 15:18:51
Использовать вместо TADOQuery вместо TADOTable и в запросе написать
'ORDER BY CInt('['+ComboBox1.Text+']) ASC'
Макар111
Дата: 21.06.2009 15:42:16
misha mike спасибо!
Идея понятно, осталось только с ковычками разобраться...
А запрос в свойстве SQL писать?
_Vasilisk_
Дата: 21.06.2009 18:43:16
Макар111
Идея понятно, осталось только с ковычками разобраться...

Параметры