Citat:
Originally posted by SimonP@Oct 17 2007, 12:08
Storleken på databasen kan fördubblas om man kör UTF-8 (och har textfält i databasen), använder man Dynamic row format så packas det iofs ihop rätt bra men kör man Fixed row format blir textfält alltid dubbelt så stora med UTF-8. Har man Memory/Heap baserade tabeller kommer det naturligtvis att kräva dubbelt så mkt RAM minne. Har man extremt mkt rader bör man överväga om man behöver UTF8, men för dom flesta är det säkrast att köra UTF-8.
|
Om man använder utf-8 så fördubblas inte storleken om man kör med CHAR utan tredubblas – men det går generellt precis lika bra att använda VARCHAR och då blir inte databasen nämnvärt större, några procent på sin höjd. Ytterst marginellt med tanke på skalbarheten vad det gäller möjligheten att använda tecken.
Det kräver alltså inte alls dubbelt så mycket minne med utf-8 utan kanske några procent mer (för svenska och andra europeiska språk). Däremot kräver ucs2 dubbelt så mycket som t.ex. latin1 vilket kan vara en anledning att undvika ucs2.
Fördelen att använda utf-8 (med eventuellt några procent mer kb) är verkligen enorm om man jämför att eventuellt senare bygga om en applikation med konverteringar mellan latin1 och latin2 för visning i utf-8 på websidan t.ex.