私は一意のキーハッシュタグとauto_incrementのIDを持っています。一意のキーを持つauto_incrementのIDですか?
1人のユーザーが重複するハッシュタグを送信すると、挿入されませんが、IDは増加します。
例:1人のユーザーがcool
を送信し、他はそれの後にcool
を送って、私はID 2.なぜ持っていないことを
5 amazing
1 cool
8 do
3 nice
予告?
CREATE TABLE IF NOT EXISTS `hashtags` (
`id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
`hashtag` varchar(100) NOT NULL,
UNIQUE KEY `hashtag` (`hashtag`),
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 AUTO_INCREMENT=1 ;
変更をコミットする前にデータベースエンジンが識別子を予約しているように見えます。新しいレコードは無効であるため(ユニーク制約に違反している)、コミットされません。これは、その列に一意でない値をコミットしたくないため、正しい動作のようです。 – David
InnoDBはこれを実行しますが、MyISAMはこれを行いません。 – Barmar
お友達に感謝!ジャンプすることなく順番に番号を入れて挿入することはできません。 –