MySQL - как использовать VARCHAR в качестве первичного ключа AUTO INCREMENT
Я использую VARCHAR в качестве основного ключа. Я хочу автоматически увеличить его (основание 62, нижний / верхний регистр, числа), однако приведенный ниже код завершается ошибкой (по очевидным причинам):
CREATE TABLE IF NOT EXISTS `campaign` (
`account_id` BIGINT(20) NOT NULL,
`type` SMALLINT(5) NOT NULL,
`id` VARCHAR(16) NOT NULL AUTO_INCREMENT PRIMARY KEY
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Однако это работает:
CREATE TABLE IF NOT EXISTS `campaign` (
`account_id` BIGINT(20) NOT NULL,
`type` SMALLINT(5) NOT NULL,
`id` VARCHAR(16) NOT NULL PRIMARY KEY
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Каков наилучший способ самостоятельно следить за увеличением идентификатора? (Так как auto_increment не работает). Мне нужно сделать другую таблицу, которая содержит текущую итерацию идентификатора? Или есть лучший способ сделать это?
РЕДАКТИРОВАТЬ: Я хочу уточнить, что я знаю, что использование INT - это первичный ключ auto_increment - логический путь. Этот вопрос является ответом на некоторый предыдущий диалог, который я видел. Спасибо