Я использую 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;
Каков наилучший способ самостоятельно отслеживать увеличение значения id? (Так как auto_increment не работает). Мне нужно сделать другую таблицу, которая содержит текущую итерацию идентификатора? Или есть лучший способ сделать это?
РЕДАКТИРОВАТЬ: Я хочу уточнить, что я знаю, что использование INT является первичным ключом auto_increment является логическим путем. Этот вопрос является ответом на некоторый предыдущий диалог, который я видел. Спасибо