Avatar billede googolplex Novice
22. juni 2003 - 15:51 Der er 6 kommentarer og
1 løsning

Vil ikke gemmes som Char

Jeg laver mine tabeller vha. phpMyAdmin, men nogen gange når jeg forsøger at oprette en kolonne med fx. Char(50), så bliver det lavet om til Varchar(50).

1. Hvorfor sker det ?
2. Er det bedst at gemme som Char eller Varchar ?
Avatar billede htm Nybegynder
22. juni 2003 - 22:31 #1
1. Jeg kan se på http://www.mysql.com/doc/en/Silent_column_changes.html at hvis du laver en varchar på 4 karakterer eller der under vil den lave sig om til char, dette vil sikkert også gøre sig gældende den anden vej!

2. Det kommer an på hvad du vil have i dit felt, hvis du vil have variable karakterer skal du helt klart vælge varchar. Hvis det er fast på 50 karakterer skal du vælge char.

Et lille eksempel på hvodan char og varchar gemmer data, og hvor meget de bruger: http://www.mysql.com/doc/en/CHAR.html
Avatar billede googolplex Novice
23. juni 2003 - 00:31 #2
1. Jeg har to tabeller. I begge bruger jeg Char(20), men det er kun i den ene tabel at den vil godtage det. I den anden gemmer den som Varchar(20) i stedet, fatter det ikke! Kan det være fordi jeg bruger Char i samme tabel som jeg TExt ?

2. Ok, takker :)
Avatar billede htm Nybegynder
23. juni 2003 - 11:44 #3
Nej det skulle ikke være derfor, men hvis du har nogen tekster skrevet i tabellen i forvejen kunne jeg forestille mig at den kigger på de forskellige længder!
Avatar billede googolplex Novice
23. juni 2003 - 11:46 #4
Det står intet i forvejen, det ene sted laver den det bare om til Varchar, det andet sted fungerer det fint med Char :-/
Avatar billede htm Nybegynder
23. juni 2003 - 11:50 #5
Jeg må være dig svar skyldig! Jeg ved ikke hvad der gør det!
Avatar billede googolplex Novice
23. juni 2003 - 11:51 #6
Nå pyt, tak for hjælpen anyway :P
Avatar billede htm Nybegynder
23. juni 2003 - 11:53 #7
Citat fra det første link jeg sendte dig:

all CHAR columns longer than three characters are changed to VARCHAR columns. This doesn't affect how you use the columns in any way; in MySQL, VARCHAR is just a different way to store characters.

Så det er jo derfor! Men hvorfor det så fungerer fint med char et andet sted er mærkeligt!
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