Форум: "Базы";
Текущий архив: 2004.05.16;
Скачать: [xml.tar.bz2];
ВнизЗапрос Найти похожие ветки
← →
Марат (2004-04-22 06:21) [0]Здравствуйте, мастера. Вопрос такой. Есть массив A: array [0..50] of string;
Количество заполненных элементов Cou=3.
Запрос:
with query1 do begin
sql.clear;
sql.add("select ..."+
"where ...");
for i:=0 to Cou-1 do begin
sql.add("and AT.Textovka="+A[i]+" ");
end;
sql.add("order by ...");
open;
first;
end;
После выполнения дается RecordCount=0 хотя это неправда.
Посмотрите, пожалуйста. Может быть вы увидите ошибку или подскажете какой-нибудь другой путь для реализации данного запроса.
← →
guest_Dmitry (2004-04-22 06:28) [1]Так у тебя в результате запрос получится ... and AT.Textovka= a[0] and AT.Textovka= a[1] and AT.Textovka=a[2]
← →
Марат (2004-04-22 06:33) [2]A мне нужно ... and AT.Textovka= "ff" and AT.Textovka= "gg" and AT.Textovka="dd"
← →
guest_Dmitry (2004-04-22 06:36) [3]Может все-таки
AT.Textovka= "ff" or AT.Textovka= "gg" or AT.Textovka="dd" ?
← →
Марат (2004-04-22 06:51) [4]Точно! Но я пробовал и так:
sql.add("and AT.Textovka="+A[0]+" ");
т.е. без всяких for. Не получилось.
← →
Вованчик © (2004-04-22 07:37) [5]попробуй добавить еще по два опострофа, чтобы получилось так:
=""" + А[..] + """"
← →
Марат (2004-04-22 08:11) [6]Дает ошибку в этой строке.
← →
Марат (2004-04-22 08:17) [7]Попробовал вот так:
for i:=0 to Cou-1 do begin
with query1 do begin
sql.add("select ..."+
"where ...");
sql.add("and AT.Textovka=:pAnsw");
sql.add("order by ...");
ParamByName("pAnsw").asstring:=A[i];
open;
first;
end;
end;
Не получается. Вытаскивается весь список и не срабатывает order by.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.05.16;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.07 c