| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > Помогите с DELETE |
| Автор: kulikoff 28.12.2005, 21:01 |
| Подключаюсь через BDE к базе данных на Oracle8i. Периодически возникает необходимость очистить таблицу базы. Пишу запрос вида Код: QUERY1.SQL.TEXT:='Delete from ":ren4ora:BANKVUP"'; При запуске долго думает, потом выдает ошибку: Цитата: Multiple records found, but only one was expected При этом у меня всё в порядке справами, SELECT, INSERT, UPDATE работают без проблем, так что с правами всё в порядке, даны привелегии администратора. Смотрел через SQLMonitor, там такая странная фигня получается, отчего-то строится запрос не совсем такой, как я его задаю, а вида: Код: DELETE FROM ":ren4ora:BANKVUP" where num1=1 and num1 is null and num2=2 and num2 is null .... и так перечисляются все поля таблицы... Что это такое и как от него избавиться? Откуда берется это where? Пробовал через этого же юзера в PL/SQL Developer'e - спокойно запрос работает, без всяких матов... Код: query1.emptytable; нельзя использовать, т.к. мне потом надо будет ещё включить условия для удаления... |
| Автор: iddqd 28.12.2005, 21:58 |
| ИМХО, надо полностью запрос выстроить. DELETE-FROM-WHERE С таким оформлением. |
| Автор: kulikoff 28.12.2005, 22:34 | ||
Писал, ему всё пофиг, всё равно лепит свои условия непонятные и фигачит....
Не прохавал он такого... |
| Автор: Vit 29.12.2005, 05:34 | ||
|
| Автор: SergeBS 29.12.2005, 16:45 |
| Поиграйся со свойством RequestLive. Оно у тебя true. Угадал? Сделай наоборот. |
| Автор: kulikoff 30.12.2005, 20:28 |
| Это свойство в BDE или в Delphi? Где его найти? Его надо установить в false? |
| Автор: SergeBS 10.1.2006, 10:39 |
| kulikoff Иди на DelphiKingdom и читай статью "Архитектура BDE и его особенности при работе с SQL-серверами 2 ". На будущее: не надо работать с SQL-серверами через BDE - не для того оно придумано было. Так что грабли, по большому счету, закономерные. Дальше будет хуже. |
| Автор: SergeBS 10.1.2006, 11:14 |
| kulikoff Пардон, перепутал - статья на DelphiWorld. |