[TYPO3-german] DROP key / ALTER key ohne Länge

abo at schmutt.de abo at schmutt.de
Thu Apr 11 10:44:06 CEST 2013


Hi,

ich habe dieses Problem mittlerweile bei vielen Extensions - es macht  
zwar keine Fehler, aber es ergibt mittlerweile eine ziemlich lange  
Liste...

Ein Key auf einen varchar Wert kann laut MySQL nicht ohne Länge  
definiert werden.

z.B. Extension enetcache sagt nach Update:

Add fields
	ALTER TABLE tx_enetcache_contentcache_tags ADD KEY cache_id (identifier);

-> ergibt diesen Fehler: #1170 - BLOB/TEXT column 'identifier' used in  
key specification without a key length

Changing fields
	select/deselect all
	ALTER TABLE tx_enetcache_contentcache DROP KEY cache_id;
	ALTER TABLE tx_enetcache_contentcache ADD KEY cache_id (identifier(500));

-> das funktioniert

ext_tables.sql:
CREATE TABLE tx_enetcache_contentcache (
	id int(11) unsigned NOT NULL auto_increment,
	identifier varchar(250) DEFAULT '' NOT NULL,
	crdate int(11) unsigned DEFAULT '0' NOT NULL,
	content mediumblob,
	lifetime int(11) unsigned DEFAULT '0' NOT NULL,
	PRIMARY KEY (id),
	KEY cache_id (identifier)
) ENGINE=InnoDB;

Egal wie ich die keys lösche und wieder hinzufüge, im Extension  
Manager wird immer wieder das ALTER Table als notwendiges Update  
vorgeschlagen.

Gibt es dafür eine Lösung, meine COMPARE DATABASE Liste ist  
mittlerweile so lang, dass ich gar nichts mehr finde vor lauter key  
Änderungen?
Und ich verliere auch den Überblick, wo ich die Keys schon manuell  
hinzugefügt habe und wo nicht, was bei großen Tabellen schon ein  
Performance Problem sein kann.

TYPO3: 4.5.25
MySQL: 5.5.30 (kein Update möglich, da Teil einer Distribution)

LG Andrea




More information about the TYPO3-german mailing list