Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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
3-87881
Makhanev A.S.
2003-03-08 00:02
2003.03.27
Посоветуйте, плз быстрый Table...


6-88103
nvv_fr
2003-02-05 04:02
2003.03.27
Net Send какой порт юзает?


14-88132
Игорь Шевченко
2003-03-12 17:59
2003.03.27
Жизненный цикл программы


1-87960
maximkus
2003-03-17 21:59
2003.03.27
как у далить проггу?


14-88158
Guzz
2003-03-05 20:05
2003.03.27
Вопрос по видимости форм!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский