Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.01.01;
Скачать: [xml.tar.bz2];

Вниз

Удаление записи в запросе   Найти похожие ветки 

 
Alex_1234 ©   (2005-12-13 14:22) [0]

Что неверно делаю: надо получить из таблицы данные, на основе этих данных произвести действия, потом эти полученные данные прибить. Пытаюсь сделать так:
Получаю данные:
qDeleNch - TADOQuery

 qDeleNch.Close;
  qDeleNch.SQL.Clear;
  qDeleNch.SQL.Add("select * from MyDATA where data= :dp and par1= :par1");
  qDeleNch.Parameters.ParamByName("dp").Value:=DateAuto49;
  qDeleNch.Parameters.ParamByName("par1").Value:=StrToInt(edPar1.Text);
  qDeleNch.Open;

Далее по тексту:

  while not qDeleNch.Eof do begin
    {что-то делаю}
     ....
     {пытаюсь удалить обработанную запись}
     qDeleNch.Edit;
     qDeleNch.DeleteRecords(arCurrent);
     qDeleNch.Post;
     qDeleNch.Next;
  end;//

Что я не так делаю???


 
alex_*** ©   (2005-12-13 14:24) [1]

а зачем в Edit заходить?


 
Reindeer Moss Eater ©   (2005-12-13 14:24) [2]

Не надо делать Edit
Не надо делать Post
Не надо делать Next


 
Alex_1234 ©   (2005-12-13 14:34) [3]

Спасибо....


 
Anatoly Podgoretsky ©   (2005-12-13 15:30) [4]

И плюс не надо делать while not qDeleNch.Eof


 
Rater ©   (2005-12-13 15:39) [5]

[4] Не понял...
если я хочу провести набор операций над каждой записью, и при необходимости удалить ненужные, а как записи перебирать?


 
0bsid ©   (2005-12-13 15:55) [6]

создавай запрос на удаление:

qdelnch.close;
qdelnch.sql.clear;
qdelnch.sql.add("DELETE ....");
qdelnch.ExecSQL;


 
Rater ©   (2005-12-13 16:08) [7]

Alex_1234 ©  
Задачку уточни, а именно:
Зачем удалять или что с этими данными дальше делать?
Что с данными делать  ... {что-то делаю} ...

0bsid ©
Непонятно откуда автор удалять хочет...
Возможно просто подкорректировать результат запроса, но тогда может запрос более грамотно написать. Если нет, то разве существует обратная связь на уровне компонента между результатом select`а и самой базой????
(при условии что insertSQL, updateSQL, DeleteSQL не прописаны)


 
0bsid ©   (2005-12-13 16:16) [8]

судя по всему он решил вообще все выбраные записи удалить :)


 
alex_*** ©   (2005-12-13 17:08) [9]

[4] -

если я хочу провести набор операций над каждой записью, и при необходимости удалить ненужные, а как записи перебирать?



while not qDeleNch.Eof do begin
   {что-то делаю}
    ....
    {пытаюсь удалить обработанную запись}
    if SomeCondition then
       qDeleNch.DeleteRecords(arCurrent)
   else
      qDeleNch.Next;
 end;


 
0bsid ©   (2005-12-13 17:28) [10]

так по идее должно нормально работать, в чём проблемы?

если не получается, то каждый раз создавай SQL запрос на удаление
но лучше сначала создай транзакцию и заверши её после завершения цикла
тогда будет совсем гуд

может быть вообще твоё somecondition можно описать через SQL выборку?



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

Форум: "Начинающим";
Текущий архив: 2006.01.01;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.01 c
10-1110787173
YuriyVol
2005-03-14 10:59
2006.01.01
Как корректно открыть csv файл через Excel OLE ?


6-1127160013
нарка
2005-09-20 00:00
2006.01.01
idtcpclient как получить информацию об удаленном хосте


2-1134829134
kotbazilio
2005-12-17 17:18
2006.01.01
Разника между датами


8-1121952080
MegaVolt
2005-07-21 17:21
2006.01.01
Как повернуть JPG не перекодируя?


14-1133968821
Кручен-Верчен
2005-12-07 18:20
2006.01.01
МАТЕМАТИКА





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский