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


_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an