ругается на строку:
Код:
INSERT INTO srv_keyboard_layouts VALUES(@kbd_layout_max, @srv_kbd_id, 122, 'CheckWay KB80 - основная раскладка',1,0 );
перед этим вычисляет нужные(максимальные+1) id и keyboard_layout_id, но только среди не удаленных раскладок
в вашем случае получаются оба 20
скорее всего последняя созданная раскладка была удалена
попробуйте создать еще одну раскладку, а затем провести обновление
или надо смотреть в таблицу