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

Вниз

Delphi and SQL server 2000   Найти похожие ветки 

 
Alexpiv   (2003-11-03 07:28) [0]

Здравствуйте уважаемые программеры.
Пишу вам потому что возникла проблема у меня.sql server, delphi.
Проблема заключается в следующем. я пытаюсь через Delphi 7 создать клиентскую часть, которая будет связываться с SQL SERVER 2000. я устанавливаю связь через ADOconnectiom и через него подключаю ADOtable, соединение прошло нормально данные отобразились. В моей таблице есть два поля Country и Data по этим полям мне необходимо отфильтровать информацию. Приведенный ниже код отлично работает через просто Table фильтрацию проходить нормально, но как только я пытаюсь этот же код присвоить ADOtable у меня выходит вот такая ошибка.
Project project1.exe raised exception class EoleException with massage СArguments are of the wrong type, are out of acceptable range or are in conflict with one anotherТprocess stoped use step or run to continue.

procedure TForm1.ComboBox2Change(Sender: TObject);
var s,a:string;
i,j:integer;
begin
a:="";
s:="";
Adotable1.Filtered:=false;
IF (ComboBox1.Text<>"")and(ComboBox1.Text<>"Country") then a:="(country="""+ComboBox1.Text+""")";
for i:=1 to 12 do
begin
if i>9 then
s:= s+ "(Data=""01."+IntToStr(i)+"."+(ComboBox2.text )+""") or "
else s:= s+ "(Data=""01.0"+IntToStr(i)+"."+(ComboBox2.Text )+""") or ";
end;
if copy(s,length(s)-2,3)="or " then delete(s,length(s)-2,3);
if a<>"" then Adotable1.Filter:=a+" and ("+s+")" else ADOtable1.Filter:=s;
ADOtable1.Filtered:=true; //Ошибка происходи тут
End

Если так нельзя фильтровать, то посоветуйте что-нибудь другой метод фильтрации, главное что бы эта информации фильтровалась как в этом коде. В результате фильтрации должна отобразиться информация в таком виде.
Поля Country Data
Австралия 01.01.2002
Австралия 01.02.2002
Австралия 01.03.2002
Австралия 01.04.2002
Австралия 01.05.2002
Австралия 01.06.2002
Австралия 01.07.2002
Австралия 01.08.2002
Австралия 01.09.2002
Австралия 01.10.2002
Австралия 01.11.2002
Австралия 01.12.2002


 
KSergey ©   (2003-11-03 07:59) [1]

Возьмите вместо ADOTable компонент ADOQuery и формируйте SQL-запрос в него в программе.
По SQL запросам читать книги или инет.


 
Anatoly Podgoretsky ©   (2003-11-03 09:41) [2]

Это выражение бессмысленное if a<>"", поскольку у тебя всегда а, как минимум равно (country="
Кроме того даты должны быть указаны в формате понимаемым сервером.



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

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

Наверх




Память: 0.47 MB
Время: 0.026 c
4-79244
Leon_O
2003-10-01 18:08
2003.11.24
Как изменить дату создания файла?


4-79235
alex25
2003-09-25 14:25
2003.11.24
Программно выключить ПК


3-78805
Peter
2003-11-05 10:32
2003.11.24
InterBase


3-78751
Disruptor
2003-11-04 13:23
2003.11.24
Добавление в одну БД информации из другой


7-79191
bon
2003-09-15 14:06
2003.11.24
Пользователь