Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите с DELETE, При DELETE выдаёт ошибку, помогите, плиз 
V
    Опции темы
kulikoff
Дата 28.12.2005, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Подключаюсь через 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;
нельзя использовать, т.к. мне потом надо будет ещё включить условия для удаления...

PM MAIL WWW ICQ Skype   Вверх
iddqd
Дата 28.12.2005, 21:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



ИМХО, надо полностью запрос выстроить.
DELETE-FROM-WHERE
С таким оформлением.


--------------------
PM MAIL   Вверх
kulikoff
Дата 28.12.2005, 22:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Писал, ему всё пофиг, всё равно лепит свои условия непонятные и фигачит.... smile. Писал такое:
Код

Query1.SQL.Text:='delete from ":ren4ora:BANKVUP" where num=321334';

Не прохавал он такого...

Это сообщение отредактировал(а) kulikoff - 28.12.2005, 22:35
PM MAIL WWW ICQ Skype   Вверх
Vit
Дата 29.12.2005, 05:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 14
Всего: 207



Код

Query1.SQL.Text:='delete from :ren4ora:BANKVUP where num=321334';




--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
SergeBS
Дата 29.12.2005, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 11
Всего: 22



Поиграйся со свойством RequestLive. Оно у тебя true. Угадал? Сделай наоборот.
PM MAIL   Вверх
kulikoff
Дата 30.12.2005, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Это свойство в BDE или в Delphi? Где его найти? Его надо установить в false?
PM MAIL WWW ICQ Skype   Вверх
SergeBS
Дата 10.1.2006, 10:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 11
Всего: 22



kulikoff
Иди на DelphiKingdom и читай статью
"Архитектура BDE и его особенности при работе с SQL-серверами 2 ".
На будущее: не надо работать с SQL-серверами через BDE - не для того оно придумано было. Так что грабли, по большому счету, закономерные. Дальше будет хуже.
PM MAIL   Вверх
SergeBS
Дата 10.1.2006, 11:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 11
Всего: 22



kulikoff
Пардон, перепутал - статья на DelphiWorld.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.0462 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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