powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / обновление таблицы под курсором
5 сообщений из 5, страница 1 из 1
обновление таблицы под курсором
    #38806721
alecks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Таблица под курсором
DECLARE cur2 CURSOR FOR
SELECT t1.su_id, t1.exp_sign, t1.del_sign, t1.saldo_in, t1.accrued, t1.rest_in, t1.recalc_in, t1.penalty
FROM saldo_usluga t1 INNER JOIN usluga_list t2 USING (usluga_id)
WHERE t1.ls_id=ls AND t2.org_id=org_id;

FETCH cur2 INTO su_id, exps, dels, saldo_in, accrued, rest_in, recalc_in, penalty;

В цикле обновляю запись таблицы

UPDATE `saldo_usluga`
SET
`saldo_out` = saldo_out,
`recalc` = recalc,
`rest_out` = rest_out,
`payment` = payment
WHERE
`su_id` = su_id;
Результат: вместо одной записи обновляется вся таблица.
Что не так?
...
Рейтинг: 0 / 0
обновление таблицы под курсором
    #38806729
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alecksWHERE
`su_id` = su_id ;
Результат: вместо одной записи обновляется вся таблица.
Что не так?Выделенное соблюдается для всех записей в таблице.
...
Рейтинг: 0 / 0
обновление таблицы под курсором
    #38806949
alecks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторВыделенное соблюдается для всех записей в таблице.
Как такое может быть если su_id ->PRIMARY KEY?
...
Рейтинг: 0 / 0
обновление таблицы под курсором
    #38807065
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alecksавторВыделенное соблюдается для всех записей в таблице.
Как такое может быть если su_id ->PRIMARY KEY?В любой записи поле равно само себе.
...
Рейтинг: 0 / 0
обновление таблицы под курсором
    #38807821
alecks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторВ любой записи поле равно само себе.
Ок. Надо быть аккуратным в именовании переменных.
Теперь вот так
UPDATE `saldo_usluga`
SET `saldo_out`=saldo_out_v, `recalc`=recalc_v, `rest_out`=rest_out_v, `payment`=payment_v
WHERE `su_id`=su;
выдает желаемый результат.
Благодарю за поддержку
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / обновление таблицы под курсором
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]