Вниз
Скачать: CL | DM;

Ошибка в запросе   Найти похожие ветки 

← →
andyfirst ©   (2002-03-05 14:44) [0]

Делаю запрос типа:
Update T1 Set G07 = (select G07 From T2 Where ...)
Where NGO In (select T3 ...)
На что получаю сообщение об ошибке от BDE:
Single row subquery produced more than one row.
Я так понимаю, что ему не нравится то, что я пытаюсь обновить множество записей множеством записей. Но мне нужно обновить не одним значением все поле, а соответствующую запись соответствующим значением из другой записи. Как быть?


← →
deleon   (2002-03-05 14:59) [1]

(select G07 From T2 Where ...)
этот подзапрос у тебя может возвращать более одного значения, поэтому его нужно переделать хотя-бы так:
(select Max(G07) From T2 Where ...)


← →
andyfirst ©   (2002-03-05 15:30) [2]

Но мне нужно обновить ряд записей не одинаковой информацией, например, присвоить полю значение = 3, а информацией из соответствующих записей другой таблицы, т.е., грубо говоря, множество обновить множеством.


← →
Johnmen ©   (2002-03-05 15:37) [3]

В рамках одного запроса - неразрешимо...


← →
MetallAdm ©   (2002-03-05 16:22) [4]

а как насчет курсора ??


← →
roottim   (2002-03-05 16:33) [5]

Update T1, T2 Set
T1.G07 = T2.GO7
Where
t1.ID=t2.ID and
NGO In (select T3 ...)


← →
Johnmen ©   (2002-03-05 16:42) [6]

>roottim : Ты бы сначала проверил работоспособность своего запроса ! Это же, извини, чушь !


← →
roottim   (2002-03-05 17:01) [7]

знаеш!... в оракле такая штука точно не пройдет!...
а вот в Access это работает как ни странно.. я так нивзначай подумал Foх, Access одна байда!... почему нет!!!
как видиш... чуш иногда работает :)


← →
roottim   (2002-03-05 17:20) [8]

Update T1 Set G07 = (select MAX(G07) From T2 Where T2.ID=T1.ID...)
Where T1.NGO In (select ...)


← →
Johnmen ©   (2002-03-05 17:24) [9]

>roottim : Если работает в Access, то это что-то ! %o)))))



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.007 c
14-298
Ajax
2002-02-18 23:11
2002.04.01
astalaViSta money saver


3-61
SergikSoft
2002-03-06 12:54
2002.04.01
Создание клиент-сервера в


3-44
kaif
2002-02-28 11:11
2002.04.01
кто знает? Сбой клиента IB.


1-232
cok
2002-03-20 18:36
2002.04.01
Tray


14-304
Виктор55
2002-02-17 22:20
2002.04.01
Быстродействие компьютера при обычном использовании




   Наверх