... ist doch interessant, dass beim Thema Performance immer wieder die Mythen dominieren:
- varchar und allocate: Angabe von Allocate < Feldlänge spart Platz und wird mit zusätzlichem synchronem I/O bestraft, wenn die belegte Feldlänge > alls der allocate ist. Das lesen von "Luft" ist asynchroner I/O und kann wg. pre paging vernachlässigt werden.
- VARCHAR allgemein: Verwendung von VARCHAR ist verbreiteter Standard außerhalb von DB2, die AS/400 Implementierung ist lausig und ich würde das eher vermeiden, wenn nicht Datenbank Unabhängigkeit gefordert ist.
- Unicode: was die Positionierung der AS/400 angeht ähnlich wie VARCHAR, aber "wat mutt dat mutt"
- Keyfelder: Keyfelder sollten immer Binary sein (Integer oder CCSID 65535), niemals VARCHAR (eine verbreitete Oracle Sitte) - ansonsten können unterschiedliche Keys je nach Einstellungen des Bildschirms gleich aussehen (das ist also kein Performance Problem).

D*B