Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.16;
Скачать: CL | DM;

Вниз

Неверная фильтрация, ADO, доступ к текстовым файлам через Jet   Найти похожие ветки 

 
DmitryNekl   (2005-08-31 12:06) [0]

Здравствуйте!

Надеюсь на вашу помощь.

Ситуация такая. Есть csv-файл, который грузится в динамически создаваемые ADO-компоненты:

 ADOTable1:=TADOTable.Create(Form1);
 ADOTable1.Name:="ADOTable1";
 ADOTable1.ConnectionString:="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + ExtractFilePath(Application.ExeName) + ";Extended Properties=text;Persist Security Info=False";

 ADOTable1.TableName:="base#csv";

 DataSource1:=TDataSource.Create(Form1);
 DataSource1.Name:="DataSource1";
 DataSource1.DataSet:=ADOTable1;

 DBGrid1:=TDBGrid.Create(Form1);
 DBGrid1.Name:="DBGrid1";
 DBGrid1.Parent:=Form1;
 DBGrid1.Align:=alClient;
 DBGrid1.DataSource:=DataSource1;

 ADOTable1.Active:=True;


Кроме того, используется файл schema.ini:

[base.csv]
ColNameHeader=True
Format=Delimited(;)
MaxScanRows=500
CharacterSet=ANSI
Col1="Col1" Char Width 100
Col2="Col2" Char Width 100
Col3="Col3" Char Width 255
Col4="Col4" Char Width 100
Col5="Col5" Float
Col6="Col6" Char Width 100


В csv-файле 5-ая колонка содержит цифры, как целые, так и дробные. Разделитель пробовал менять (точка или запятая), ничего не меняется, в гриде отображается запятая. Проблема: при выполнении фильтрации


ADOTable1.Filter:="Col5=0,5";
ADOTable1.Filtered:=True;


отображаются данные с Col5=5, а не 0,5.

Подскажите, плз, как решить проблему?


 
Slym ©   (2005-08-31 13:28) [1]

ADOTable1.Filter:="Col5="0,5"";?


 
DmitryNekl   (2005-08-31 13:58) [2]

Дык поле-то не текстовое... не помогает.
Решил! :) Забавно... в условии фильтрации вместо запятой точку прописал. Все заработало :)


 
Palladin ©   (2005-08-31 20:52) [3]

А чего забавного? Не задумывался, что в Delphi числа-константы с плавающей точкой записываются именно через точку, а не запятую, вне зависимости от региональных настроек


 
Anatoly Podgoretsky ©   (2005-09-01 01:01) [4]

Фильтры и запросы делаются без учета региональных настроек, используется универсальная нотация, через точку.



Страницы: 1 вся ветка

Текущий архив: 2005.10.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
1-1127464987
ZeroDivide
2005-09-23 12:43
2005.10.16
Проблема с оторбражением свойств в Инспекторе Объектов.


1-1127712035
Ded_Matvey
2005-09-26 09:20
2005.10.16
меняется шрифт в перерисованой канве


14-1127539197
Карелин Артем
2005-09-24 09:19
2005.10.16
Проверка компьютера касперским.


14-1127745617
Fl@sh
2005-09-26 18:40
2005.10.16
Form1.Caption := я, сделал это... ;


8-1116841859
ALL
2005-05-23 13:50
2005.10.16
MediaPlayer