dedlfix: Varbinary - Varchar - BLOB (MySQL))

Beitrag lesen

echo $begrüßung;

Ich hab neulich nur gehört, dass es beim Suchen (Volltext) von chinesischen Wörtern vorteilhafter ist wenn varbin oder bin benutzt wird.

Welche Begründung wurde für dieses Argument geliefert? Und galt es für alle von MySQL untersützten Character Sets, die chinesische Zeichen abbilden können?

...Ist aber "bin" nicht generell Case-sensitiv, sodass die Suchergebnisse lateinischer Wörter wiederum case-sensitiv ausgegben würden?

Ein (VAR)BINARY-Feld interessiert sich überhaupt nicht mehr für die Inhalte und speichert nur Bytes. Vergleiche finden auch nur byteweise statt.

Anders dagegen verhalten sich (VAR)CHAR-Felder mit dem BINARY-Attribut (das in eine Binär-Collation umgeschrieben wird). Hier werden die Werte der Zeichen, die ja auch aus mehreren Bytes bestehen können, verglichen. Und da hier nur Werte verglichen werden, interessiert es nicht, welche Zeichen diesen Werten zugeordnet sind.

Dass keinerlei Groß-/Kleinschreibweise bei beiden Binärfeldarten beachtet wird, ergibt sich einfach aus den Eigenschaften dieses Feldtyps. Eine Aussage binär = case-insensitiv ist zwar nicht falsch aber genauso überflüssig wie: Ein Binärfeld hat keinen Balkon.

echo "$verabschiedung $name";