phpbar.de logo

Mailinglisten-Archive

Re: VarChar und Char
Archiv Mailingliste mysql-de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: VarChar und Char



Hi Richard,

> ich habe eine Datenbank, die ich von Access nach mysql exportiert habe. In
> den verschiedenen Tabellen gibt es einige Felder, die in den Typ VarChar
> konvertiert wurden. Da in diese aber ein String fester Länge (20 Zeichen)
> eingefügt werden soll und dieser aber am Ende Leerzeichen enthält möchte ich
> für diese VarChar-Felder den Datentyp Char.

MySQL-Manual, Kap. 7.7.1: Silent column specification changes
---*snip*---
If any column in a table has a variable length, the entire row is
variable-length as a result. Therefore, if a table contains any
variable-length columns (VARCHAR, TEXT or BLOB), all CHAR columns longer
than three characters are changed to VARCHAR columnss. This doesn't
affect how you use the columns in any way; in MySQL, VARCHAR is just a
different way to store characters. MySQL performs this conversion
because it saves space and makes table operations faster.
---*snap*---

Das hängt auch noch irgendwie mit der Art der Tabelle abhängig (siehe
Kap. 10.6). Mir ist allerdings in einer meiner Datenbanken aufgefallen,
dass mySQL (zumindest 3.22) mitnichten VARCHAR im Datenfile als String
variabler Länge speichert, sondern fix. Bin dem aber nicht weiter
nachgegangen.

Ich denke mal wenn du Spaces am Ende des Strings behalten willst (das
macht Access aber auch nicht!), dann solltest du auf einen BLOB
umsteigen.

Gruß Jan

---
*** Weitere Infos zur Mailingliste und MySQL unter http://www.4t2.com/mysql 


Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive