Форум: "Базы";
Текущий архив: 2003.03.27;
Скачать: [xml.tar.bz2];
Внизпочему обновления только в одной строке? Найти похожие ветки
← →
Roki (2003-03-11 14:41) [0]Мастера, помогите.
Такая вот процедура:
CREATE PROCEDURE GET_DATA
AS
declare variable phone_n integer;
declare variable fio_n varchar(255);
declare variable id_n integer;
declare variable d_prop_n date;
BEGIN
for
select phone, fio, id, d_prop
from ntu
into :phone_n, :fio_n, :id_n, :d_prop_n
do
begin
update name_lg
set fio=:fio_n, id=:id_n, d_prop=:d_prop_n
where phone=:phone_n;
suspend;
end
END
Как сделать чтобы все нужные строки обноляла?
← →
Roki (2003-03-11 14:56) [1]
> suspend;
без этого вообще ничего не обновляет, мастера как быть?
← →
Roki (2003-03-11 15:20) [2]ну что никогда никто не сталкивался с одновлением данных из процедуры?
← →
Roki (2003-03-11 15:25) [3]самое интересное, что если выполнить такой запрос, то
update name_lg t1
set t1.fio=(select t2.fio from ntu t2 where t1.phone=t2.phone)
все обновления делаются, но для все полей fio - там где телефон не совпал, там NULL :((((
← →
Roki (2003-03-11 15:36) [4]Как тогда можно сделать? Может есть какие-то другие способы?
← →
Smashich (2003-03-11 15:41) [5]Create PROCEDURE Temp
AS
DECLARE VARIABLE ID INTEGER;
DECLARE VARIABLE Str1 char (25);
BEGIN
FOR SELECT ID,Str1 FROM MyTable
INTO :ID,:Str1 DO
BEGIN
UPDATE MyTable SET
Str2=:Str1
WHERE ID=:ID;
END
END
работает
← →
Smashich (2003-03-11 15:42) [6]a suspend нужен для вывода данных....и не рекомендуеться к использование в процедурах не возвращающих ничего
← →
Silver_ (2003-03-11 15:44) [7]
> update name_lg t1
> set t1.fio=(select t2.fio from ntu t2 where t1.phone=t2.phone)
добавь
where
и условие типа t1.phone=t2.phone (чтоб update проходил тока по нужным записям)
вот над условием помозгуй сам не особо всматривался в код :))
← →
Roki (2003-03-11 15:53) [8]
> Smashich © (11.03.03 15:41
я пробовал и без suspend - не работает, я правда запускаю ее в IBMAnegere... Может он глючит?
← →
Silver_ (2003-03-11 16:11) [9]
update name_lg t1, ntu t2
set t1.fio=t2.fio
where t1.phone=t2.phone
попробуй так
← →
zacho (2003-03-11 20:53) [10]Suspend тут нафиг не нужен, т.ч. или баг в твоей сборке FB (кстати, написал бы конкретно, с каким клоном/сборкой IB/FB работаешь), либо ты чего-то не сказал:)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.03.27;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.008 c