Avatar billede JJ77 Juniormester
14. februar 2006 - 22:29 Der er 7 kommentarer og
2 løsninger

hvordan er det nu med datatyper i mysql

Er her nogle som kort kan resumere hvordan det nu er med de forskellige datatyper i mysql.. hvad kan de indeholde, og hvor meget?
nedenfor vises de jeg er interesseret i... tænkte bla. på, hvis det som skal indsættes i et felt fx indeholder et tlfnr. på 8 tal, skal man så bruge en int(8) eller en mediumint(8).. hvad er smartest. Er det ikke noget med at en bigint bruger mere hukommelse end en int osv..

int
smallint
mediumint
bigint
tinyint

tinyblob
blob
mediumblob
longblob

longtext
varchar
float
text
Avatar billede cpufan Juniormester
14. februar 2006 - 22:37 #1
Avatar billede arne_v Ekspert
14. februar 2006 - 23:28 #2
cpufans link giver limits

husk at for tal betyder (8) ikke at det kan indeholde 8 cifre men at MySQL vil tilstræbe
at visse det med 8 cifre

generelt har man ikke brug for så mange af dem

du kommer langt med:

if(binary file) then
    if max size > 64 KB then
      choose MEDIUMBLOB
    else
      choose BLOB
    endif
else if(text file or long text) then
    choose TEXT
else if(short text) then
    choose VARCHAR
else if(amount) then
    choose DECIMAL
else
    choose INTEGER
endif
Avatar billede JJ77 Juniormester
15. februar 2006 - 01:08 #3
dvs.. at hvis jeg fx skal have vist et tlfnr.. så ville det være smartest at lave feltet i databasen til et int(8)?
Avatar billede arne_v Ekspert
15. februar 2006 - 04:08 #4
eller VARCHAR

fordi:

1) du skal aldrig regne på tlf.nr.

2) VARCHAR understøtter '12345678 lok. 137'
Avatar billede JJ77 Juniormester
16. februar 2006 - 11:00 #5
bruger varchar mindre hukommelse end integer?
Avatar billede arne_v Ekspert
16. februar 2006 - 13:22 #6
integer bruger 4 bytes

varchar bruger 1 + faktisk antal tegn bytes

men plads er naeppe et stort problem for tlf. numre
Avatar billede JJ77 Juniormester
19. februar 2006 - 02:15 #7
Nå, men det må jo være det.. smider du ikke et svar Arne.. takker:)
Avatar billede arne_v Ekspert
20. februar 2006 - 00:07 #8
gerne

men cpufan var vel foerst !?!?
Avatar billede cpufan Juniormester
20. februar 2006 - 00:21 #9
vi kan vel bare dele, du har jo lavet en del benarbejde arne
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester