Я работаю в проекте, связанном с Invoice, сейчас у меня проблема с размером индекса БД или чем-то связанным с index
.
Индекс:
Keyname: invoice_number_company_unique
Type: BTREE
Unique: Yes
Packed: No
Column: invoice_number_prefix, invoice_number, company_id
Cardinality: 256, 768, 768
Collation: A, A, A
Null: Yes, Yes, No
Имя таблицы: invoices
Структура таблицы:
CREATE TABLE IF NOT EXISTS `invoices` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`invoice_number_prefix` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`invoice_number` int(12) unsigned DEFAULT NULL,
`company_id` int(11) unsigned NOT NULL,
`amount` decimal(13,2) NOT NULL DEFAULT '0.00' COMMENT 'Invoice Total'
PRIMARY KEY (`id`),
UNIQUE KEY `invoice_number_company_unique`
(`invoice_number_prefix`,`invoice_number`,`company_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;
Данные вставлялись до: invoice_number_company_unique = invo settings-4294967295-6
При попытке сделать следующий счетгде invoice_number_company_unique = invo settings-4294967296-6
: начинает отображаться ошибка БД, как показано ниже:
Дублирующая запись 'invo settings-4294967295-6' для ключа 'invoice_number_company_unique'
Я думаюэто связано с размером индекса.Потому что, когда я изменил invo settings-4294967295-6
на invo sett-4294967295-6
, он работал успешно.Я пробовал это непосредственно в БД.
С: invo settings-4294967295-6
Ошибка БД
С: invo sett-4294967295-6
Успех
Может кто-нибудь знать об этом?Пожалуйста, попробуйте мне помочь?