webForumDet fria alternativet

varchar eller text?

7 svar · 512 visningar · startad av henkz

henkzMedlem sedan apr. 2002179 inlägg
#1

Vilken typ skall jag använda? varchar eller text till mysql databas? Det kommer att vara allt från ett namns storlek till en hel dikt...
eller skall jag välja någon annan typ än ovanstående?

Jörgen HPMedlem sedan feb. 20012 179 inlägg
#2

Hej, ett varchar fält rymmer 8000 ASCII-tecken, och en byte motsvarar ett ASCII-tecken, ska du lagra minde än 8000 så välj varchar. Ska du lagra mer så välj något av nedanstående beroende på storleken du behöver:

TINYTEXT En mycket liten textsträng 2^8-1 bytes
TEXT En liten textsträng 2^16-1 bytes
MEDIUMTEXT En medelstor textsträng 2^24-1 bytes
LONGTEXT En lång textsträng 2^32-1 bytes

henkzMedlem sedan apr. 2002179 inlägg
#3

en följefråga...

hur räknar man ut antal tecken?

"TEXT En liten textsträng 2^16-1 bytes "
vad motsvarar : 2^16-1 bytes ??

spangoMedlem sedan juni 20006 147 inlägg
#4

2^16 betyder två upphöjt till sexton. - 1 betyder att man tar bort ett från resultatet ;)
(2*2*2*2*2*2*2*2*2*2*2*2*2*2*2*2)-1

henkzMedlem sedan apr. 2002179 inlägg
#5

tack!

nu förstår jag :)
om jag nu använder "TEXT" som typ, kan jag under drift ändra det till ex "MEDIUMTEXT" utan att radera, förstöra .. datan?

VirrdoMedlem sedan okt. 2001167 inlägg
#6

henkz: det fungerar för mig iaf, har inte råkat ut för några missöden iaf

LarsGMedlem sedan dec. 200012 465 inlägg
#7

Hej, ett varchar fält rymmer 8000 ASCII-tecken

Inte i Mysql i alla fall. Där kan en varcharkolumn innehålla max 255 tecken.

Jörgen HPMedlem sedan feb. 20012 179 inlägg
#8

Helt rätt LarsG, tack för rättelsen ;)

Blandade DBMS lite, det är varchar i SQL-server som rymmer 8000 väl?

Genererad på 377 ms · cache AV · v20260730165559-full.f96bc7eb