无法在 RoR 3 的数据库中存储大字符串
我只允许在 db 列中存储大约 250 个字符。当我尝试添加大字符串时,它会自动省略多余的字符。我在脚手架中使用的类型是string
。如何将大字符串存储在 db.我使用 MySQL 作为数据库。
I'm only allow to store around 250 characters in db column. When I try to add large string it automatically omit the extra character. The type I used in scaffold is string
. How can I store large strings in db. I'm using MySQL
as db.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用数据类型“文本”而不是“字符串”
CHAR( ) : 长度为 0 到 255 个字符的固定部分。
VARCHAR( ): 长度为 0 到 255 个字符的可变部分。
TINYTEXT: 最大长度为 255 个字符的字符串。
TEXT: 最大长度为 65535 个字符的字符串。
BLOB:最大长度为 65535 个字符的字符串。
MEDIUMTEXT: 最大长度为 16777215 个字符的字符串。
MEDIUMBLOB: 最大长度为 16777215 个字符的字符串。
LONGTEXT: 最大长度为 4294967295 个字符的字符串。
LONGBLOB: 最大长度为 4294967295 个字符的字符串。
use data type "text" instead of "string"
CHAR( ) : A fixed section from 0 to 255 characters long.
VARCHAR( ): A variable section from 0 to 255 characters long.
TINYTEXT: A string with a maximum length of 255 characters.
TEXT: A string with a maximum length of 65535 characters.
BLOB: A string with a maximum length of 65535 characters.
MEDIUMTEXT: A string with a maximum length of 16777215 characters.
MEDIUMBLOB: A string with a maximum length of 16777215 characters.
LONGTEXT: A string with a maximum length of 4294967295 characters.
LONGBLOB: A string with a maximum length of 4294967295 characters.
不要使用
:string
作为列类型,而是使用:text
- 它将为您提供更多空间来存储字符串。Instead of using
:string
as your column type, use:text
- it will give you much more space to store your string.