I am using MySQL data base with Rails. I have created a field of type string
. Are there any limits to its length? What about type text
?
Also as text
is variable sized, I believe there would be extra costs associated with using text objects. How important can they get, if at all?
A fixed-length string that is always right-padded with spaces to the specified length when stored The range of Length is 1 to 255 characters. Trailing spaces are removed when the value is retrieved.
CHAR
values are sorted and compared in case-insensitive fashion according to the default character set unless theBINARY
keyword is given.
A variable-length string. Note: Trailing spaces are removed when the value is stored (this differs from the ANSI SQL specification)
The range of Length is 1 to 255 characters.VARCHAR
values are sorted and compared in case-insensitive fashion unless theBINARY
keyword is given
A
TINYBLOB
orTINYTEXT
column with a maximum length of 255 (28 - 1) characters
A
BLOB
orTEXT
column with a maximum length of 65,535 (216 - 1) characters , bytes = 64 KiB
A
MEDIUMBLOB
orMEDIUMTEXT
column with a maximum length of 16,777,215 (224 - 1)characters , bytes = 16 MiB
A
LONGBLOB
orLONGTEXT
column with a maximum length of 4,294,967,295 (232 - 1) characters , bytes = 4 GiB
See MySQL Data Types Quick Reference Table for more info.
also you can see MYSQL - String Type Overview
String, in general, should be used for short text. For example, it is a VARCHAR(255)
under MySQL.
Text uses the larger text from the database, like, in MySQL, the type TEXT
.
For information on how this works and the internals in MySQL and limits and such, see the other answer by Pekka.
If you are requesting, say, a paragraph, I would use text. If you are requesting a username or email, use string.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With