上記のすべての問題を回避するために、私は次のようにうまく機能するように構築することができました!
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 ;
ほとんどの場合、最も高いidを使用します 、log(2)を取得します 対応するAUTO_INCREMENTを提供します。 id 。次に、1を追加します 、そしてそれを2までパワーアップします 。
これが、他の人の頭痛の種を防ぐのに役立つことを願っています。