Форум: "Базы";
Текущий архив: 2005.10.16;
Скачать: [xml.tar.bz2];
ВнизНеверная фильтрация, 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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.04 c