Pour contourner tous les problèmes ci-dessus, j'ai pu construire ce qui suit qui fonctionne très bien !
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 ;
À peu près, nous prenons le id le plus élevé , récupérez le log(2) de celui-ci qui nous donne le AUTO_INCREMENT correspondant id . Nous ajoutons ensuite 1 , et alimentez-le jusqu'à 2 .
J'espère que cela aidera à prévenir certains maux de tête pour les autres.