powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Автонумерация по нескольким ключевым полям
5 сообщений из 5, страница 1 из 1
Автонумерация по нескольким ключевым полям
    #38932096
miv32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Необходимо получить что-то типа:

Код: sql
1.
2.
update att_sys set cur_num = cur_num + 1 where att_parent_id = new.att_id and cur_year = YEAR(CURRENT_DATE());
select cur_num into new_cur_num from att_sys where att_parent_id = new.att_id and cur_year = YEAR(CURRENT_DATE());



Т.е. получить последнее значение счетчика.

Проблема в том, что в триггере нельзя залочить таблицу att_sys или использовать транзакцию, т.е. нельзя фактически гарантировать, что новый cur_num будет = select cur_num при работе в многопользовательском режиме.

select ... for update без транзакции тоже не годится.

Собственно задача - обеспечить нумерацию, начинающуюся с 1 с начала года.
Посоветуйте, в каком направлении смотреть?
...
Рейтинг: 0 / 0
Автонумерация по нескольким ключевым полям
    #38932201
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miv32,

можно сделать это в хранимке.
...
Рейтинг: 0 / 0
Автонумерация по нескольким ключевым полям
    #38932231
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miv32,

Можно задействовать функцию LAST_INSERT_ID() с параметром.
...
Рейтинг: 0 / 0
Автонумерация по нескольким ключевым полям
    #38932473
miv32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо! Попробую.
...
Рейтинг: 0 / 0
Автонумерация по нескольким ключевым полям
    #38932682
miv32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

LAST_INSERT_ID() с параметром творит просто чудеса!
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Автонумерация по нескольким ключевым полям
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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