Wie kann man Optimized attribute erstellen ?

Im Gentics® .Node ContentRepository kann man einzelne attribute als optimized markieren. Für diese gibt es dann eine eigene Spalte in der tabelle 'contentmap'. Es gibt zwei Ausnahmen, wo es nicht möglich ist ein attribute als 'optimized' zu marieren: 1.) Multivalue attribute und 2.) Foreign link attribute (Da Foreign Link attribute nicht wirklich in der datenbank stehen, macht es keinen sinn sie zu optimieren.)

Als erstes muss man eine column in contentmap erstellen (statt 'attributename' den namen des attributes verwenden):

ALTER TABLE contentmap ADD quick_attributename <TYPE>;

Je nachdem von welchem typ das attribut ist, muss der column einen anderen typ haben. Am besten einfach nachsehen, welchen typ der column in 'contentattribute' besitzt (z.b. mittels SHOW CREATE TABLE contentattribute') - z.b. fuer value_text: medium_text, value_int: integer, etc.

Anschliessend benötigt man noch einen Datenbank Index über diese Spalte:

ALTER TABLE contentmap ADD INDEX (quick_attributename);


Nun kann man die originalen Werte aus contentattribute kopieren ('attributename' hier wieder ueberall durch den namen des attributs ersetzen und 'value_text' durch die korrekte spalte):

UPDATE contentmap m SET quick_attributename = (SELECT value_text FROM contentattribute a WHERE a.contentid = m.contentid AND a.name = 'attributename');


Als letztes muss man noch in 'contentattributetype' vermerken dass das Attribute optimized ist:

UPDATE contentattributetype SET optimized = 1, quickname = 'quick_attributename' WHERE name = 'attributename';




Seite drucken
Seite empfehlen


Downloads & Links