Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Использование результата запроса, в ADO 
:(
    Опции темы
Foley
Дата 4.4.2006, 22:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фсемба Яцца
*


Профиль
Группа: Участник
Сообщений: 235
Регистрация: 31.1.2006
Где: Россия, Арх.обл

Репутация: нет
Всего: 7



Можно ли как-нибудь присвоить результат запроса значению таблички? Bот например я выбрал запросом запись

Код

dm.AQ_rab.Active:=false;
dm.AQ_rab.SQL.Clear;
dm.AQ_rab.SQL.Add('select *');
dm.AQ_rab.SQL.Add('from rabotniki');
dm.AQ_rab.SQL.Add('where FAM LIKE "'+edit1.Text+'%"');
dm.AQ_rab.Active:=true;


теперь мне надо чтобы результат можно было присвоить таблице


З.Ы. Почему при использовании ADO не проходит фильтрация, точнее с точным условием поиска находит, а вот иначе нет:
Код

dm.AT1.filter:='FIO='''+edit1.text+'''';

проходит, а
Код

dm.AT1.filter:='FIO='''+edit1.text+'*''';

не проходит, хотя при использовании BDE все работает нормально?
PM MAIL ICQ   Вверх
Grig
Дата 5.4.2006, 03:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 809
Регистрация: 29.4.2005
Где: Иркутск

Репутация: 4
Всего: 16



1. Наверное так. Потом работай с таблицей new_table. А вообще, лучше работать через вьюхи.
Код

dm.AQ_rab.Active:=false;
dm.AQ_rab.SQL.Clear;
dm.AQ_rab.SQL.Add('select *');
dm.AQ_rab.SQL.Add('into new_table');
dm.AQ_rab.SQL.Add('from rabotniki');
dm.AQ_rab.SQL.Add('where FAM LIKE "'+edit1.Text+'%"');
dm.AQ_rab.Active:=true;


На второй вопрос: Как понять не проходит? Не фильтруется или ошибку какую выдает?
Если что можно сделать с помощью запроса:
Код

procedure TForm1.Edit1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
  var
  s:string ;
begin
AT1.Active:=false;
AT1.SQL.Clear;
s:='select * from my_table where FIO like '+''''+trim(edit1.text)+'%'+'''' ;
AT1.SQL.Add(s) ;
AT1.Active:=true;
end;




Это сообщение отредактировал(а) Grig - 5.4.2006, 04:05


--------------------
        
PM MAIL ICQ   Вверх
MakNik
Дата 5.4.2006, 11:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 5.4.2006

Репутация: нет
Всего: 0



Код

dm.AQ_rab.Active:=false;
dm.AQ_rab.SQL.Clear;
dm.AQ_rab.SQL.Add('IF EXISTS(SELECT * FROM new_table)');
dm.AQ_rab.SQL.Add('DROP TABLE dbo.new_table');
dm.AQ_rab.SQL.Add('select *');
dm.AQ_rab.SQL.Add('into new_table');
dm.AQ_rab.SQL.Add('from rabotniki');
dm.AQ_rab.SQL.Add('where FAM LIKE "'+edit1.Text+'%"');
dm.AQ_rab.SQL.Add('select * from new_table');
dm.AQ_rab.Active:=true;

PM   Вверх
Foley
Дата 5.4.2006, 22:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фсемба Яцца
*


Профиль
Группа: Участник
Сообщений: 235
Регистрация: 31.1.2006
Где: Россия, Арх.обл

Репутация: нет
Всего: 7



Цитата(Grig @ 5.4.2006, 03:43 Найти цитируемый пост)
Как понять не проходит? Не фильтруется или ошибку какую выдает?

Grig, ошибки не выдает, а просто чистый ДБГрид (т.е. как будто заначения в базе не нашел)
как я понял надо создавать прмежуточную табличку и в нее копировать результат а потом уже из этой таблички копировать значение? Правильно понял?
Добавлено @ 22:33
точнее не копировать а передать результат в табличку new_table...
PM MAIL ICQ   Вверх
Foley
Дата 5.4.2006, 23:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фсемба Яцца
*


Профиль
Группа: Участник
Сообщений: 235
Регистрация: 31.1.2006
Где: Россия, Арх.обл

Репутация: нет
Всего: 7



Забыл немного пояснить, AT1 - ADOtable
AQ_rab - ADOQuery
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0593 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.