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

Вниз

Error:   Найти похожие ветки 

 
lak_b ©   (2002-05-30 00:32) [0]

Скажите пожалуйста почему при попытке написать вложенный SQL запрос (3 уровня вложенности и выше) Delphi выдает ошибку:
" Could not find object "

например:

Query2.Close;
Query2.SQL.Clear;
Query2.SQL.Add("Delete from Notes where NoteIDField in");
Query2.SQL.Add(" (Select NoteIDField from PersonsNotes where");
Query2.SQL.Add(" (Select count(*) from personsNotes where NoteIDField in");
Query2.SQL.Add(" (Select NoteIDField from PersonsNotes where PersonIDField = :CurrentPerson) ");
Query2.SQL.Add(" ) = 1");
Query2.SQL.Add(" ) ");
Query2.ParamByName("CurrentPerson").AsInteger := GlobalPersonID;
Query2.ExecSQL;


 
Дуся ©   (2002-05-30 09:36) [1]

А из консоли это работает?..


 
MViper ©   (2002-05-30 12:11) [2]

Если не ошибаюсь, то после последнего
Query2.SQL.Add(...)

следует добавить

Query2.Prepare

а потом уже

Query2.ParamByName(...)


 
kaif ©   (2002-05-30 14:29) [3]

Вообще-то запрос сам по-себе весьма рисковый. Удаление по условию, где идет подстчет того, что нужно удалять... Попробуй явно стартовать транзакцию перед тем, как его исполнять. Может, поможет...
Если таких записей мало, предлагаю поступить иначе. Сначала запроси все записи, удовлетворяющие условию count(*) = 1. Собери из них строку с номерами NoteIDField через запятую "(,,,,,)".
И сделай delete from Notes where NoteIDField in (,,,,,).


 
VAleksey ©   (2002-05-30 18:07) [4]

Нельзя передавать параметры в подзапрос. Знаю так как сым с этим сталкивался.
см . LocalSQL.hlp



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
14-77609
arbiter
2002-05-20 22:18
2002.06.24
Свобода слова или нет?


14-77602
ДедушкаКо
2002-05-17 13:45
2002.06.24
Ну я в районе Полевой-Индустриальной А ГДЕ ВЫ ну например хавк


1-77425
Dimitriev V G
2002-06-10 16:53
2002.06.24
Оптимизация программы на Дельфи, утилиты просмотра памяти, тактов


1-77355
hooky-mars
2002-06-10 20:55
2002.06.24
Пмагите найти ошибку! С removedir


1-77398
esVer
2002-06-13 16:04
2002.06.24
Принтер по умолчанию