Abych obešel všechny výše uvedené problémy, byl jsem schopen sestavit následující, které funguje skvěle!
DELIMITER $$
CREATE TRIGGER testbitcompatid BEFORE INSERT ON Table
FOR EACH ROW
BEGIN
SET @LAST_ROW = (SELECT MAX(id) FROM Table);
SET NEW.id = CASE WHEN @LAST_ROW IS NULL THEN 1 ELSE @LAST_ROW * 2 END;
END;
$$
DELIMITER ;
V podstatě bereme nejvyšší id , uchopte log(2) což nám dává odpovídající AUTO_INCREMENT id . Poté přidáme 1 a napájejte jej až 2 .
Doufám, že to pomůže předejít bolesti hlavy pro ostatní.