Mi chiedo, se ho un VARCHAR di 200 caratteri e che inserisco una stringa di 100 caratteri, userà 200 byte o userà solo la dimensione effettiva della stringa?Dimensione VARCHAR MySQL?
risposta
100 caratteri.
Questa è la var (variabile) in varchar
: memorizzare solo quello che si entra (e un extra di 2 byte a lunghezza memorizzare fino a 65535)
Se fosse char(200)
allora si sarebbe sempre memorizzare 200 caratteri , imbottito con 100 posti
Vedere la documentazione: "The CHAR and VARCHAR Types"
non byte ma caratteri :) – Karolis
Per essere chiari: la memorizzazione di una stringa di 100 caratteri in un campo 'varchar (200)' richiederà 101 byte. La memorizzazione di una stringa di 100 caratteri in un campo 'varchar (256)' richiederà 102 byte. Questo è il motivo per cui vedi 'varchar (255)' così frequentemente; 255 caratteri è la stringa più lunga che è possibile memorizzare nel tipo 'varchar' di MySQL con un solo byte di overhead. Qualunque cosa più grande richiede due byte di overhead. – rinogo
@rinogo Non dipende dal set di caratteri? Stai assumendo ASCII o cosa? – mpen
VARCHAR significa che è un carattere di lunghezza variabile, quindi è solo andando a prendere un s molto spazio necessario. Ma se sapessi qualcosa sulla struttura sottostante, , potrebbe aver senso limitare VARCHAR a un importo massimo.
Ad esempio, se si memorizzavano commenti dall'utente, è possibile limitare il campo di commento a soli 4000 caratteri nel campo di commento ; in caso affermativo, non ha alcun senso fare in modo che la tabella sql abbia un campo più grande di rispetto a VARCHAR (4000).
- 1. limite di dimensione MySQL VARCHAR
- 2. Dimensione colonna varchar MySQL UTF8
- 3. SQLite VARCHAR dimensione predefinita
- 4. Mysql Bigint VS Varchar
- 5. MySQL TEXT o VARCHAR
- 6. MySQL: Perché utilizzare VARCHAR (20) anziché VARCHAR (255)?
- 7. mySQL convertire varchar alla data
- 8. MySQL: perché varchar (254) e non varchar (255)?
- 9. Dimensione massima di una variabile varchar (max)
- 10. MySQL troppo lungo troncamento varchar/impostazione errore
- 11. MySQL - TESTO vs CHAR e VARCHAR
- 12. mysql ordine campo varchar come intero
- 13. MySQL Determinare la lunghezza VarChar più lunga
- 14. Definire la lunghezza di varchar per MySQL nei binari
- 15. MySQL: Ordina per dimensione del campo/lunghezza
- 16. Che dimensione usi per varchar (MAX) nella dichiarazione dei parametri?
- 17. Postgresql - modifica la dimensione di una colonna varchar
- 18. Come concatare tipi di dati come interi (interi con numero intero) e varchar (varchar con varchar) in mysql?
- 19. Differenza tra varchar (5) e varchar (5000)?
- 20. Dimensione del database. PHP - MySQL
- 21. Varchar (255) a Varchar (MAX)
- 22. MySQL: come utilizzare VARCHAR come chiave primaria AUTO INCREMENT
- 23. Quando usare TESTO in mysql invece di VARCHAR
- 24. Quali sono le dimensioni varchar ottimali per MySQL?
- 25. InvalidRequestError: VARCHAR richiede una lunghezza sul dialetto mysql
- 26. Dichiarazione e utilizzo delle variabili varchar di MySQL
- 27. Come convertire da varbinary a char/varchar in mysql
- 28. Tabella MySQL con una colonna varchar come chiave esterna
- 29. Come posso convertire BLOB in VARCHAR in MySQL?
- 30. Prestazioni MySQL di campo varchar unico vs bigint unico
Duplicate: http://stackoverflow.com/questions/1962310/importance-of-varchar-length-in-mysql-table –
Un dettaglio blog: http://goo.gl/Hli6G3 –